[WS] Beatport.com by stevehero [Release, Single Track & Artwork tagging]

It may be a couple of days before i get to look at this problem. Seems that BP have changed the API. I'll check it out ASAP.

No prob, thank you for your work!

sorry for the delay.

big thank you steve!

i just figured it out the same way!

thanks for helping out!

cheers

in v1 u could add the &format=xml parameter, but that doesn't seem to be working in v3.

I reported this (v1 always returning "Don't Cross The Line" to Beatport support.
U suspect something went wrong with v1, while adding/updating v.3.

I've found something here, it looks like they shut down the XML and are only using JSON now.

https://groups.google.com/d/msg/beatport-ap...4k/DB8JzUmXqicJ

Working on it at the moment. Hope to have it up and running again ASAP.

I got a reply from beatport support...

No timeframe mentioned :frowning:

SHM!! lol... Anyway I've updated one of the scripts such as the one attached for you users to try out and see what you think and see if there are any bugs etc with any releases on beatport prior to uploading the final version. There's an extra little tag ISRC in there because I'm using the JSON API page in beatport. All the rest are there as before.

Now here's where we start to get technical. I've rewrote the script in JSON for the [ParserScriptAlbum]=... and have updated the script to use the sayregexp command. Any failures in the script and it'll keep on going unlike the old scripts.

Thing is I was toying with changing the [ParserScriptIndex]=... to search beatport in the JSON format also seeing as the XML is only there to support the old site, so I may as well update the lot now.

Trouble is I'm using (for single track searches):
[indexurl]=Login

and it's not going to the list of search results but is going to the adjust tag info one instead. Perhaps some users out there like pone, dano etc could help me out here and take a look at the script for me. Seem to have gotten a little stuck. Thanks. Also what's your experience with using JSON instead of XML? Faster/more reliable?

WORKING SCRIPT
Beatport_by__stevehero_SINGLE_TRACK_Search_by_Title___Index_XML_Album_JSON_TEST.src (11.2 KB)

PROBLEM SCRIPT
(If any person would like to help a brother out:)
Beatport_by__stevehero_SINGLE_TRACK_Search_by_Title___Index_JSON_Album_JSON_TEST.src (12.2 KB)

Beatport_by__stevehero_SINGLE_TRACK_Search_by_Title___Index_XML_Album_JSON_TEST.src (11.2 KB)

Beatport_by__stevehero_SINGLE_TRACK_Search_by_Title___Index_JSON_Album_JSON_TEST.src (12.2 KB)

Old script is working again!

Thanks for reporting.

I might update all the scripts sometime to the JSON format if I can find the spare time.

First of all, MASSIVE work by you Steve. You truly are a hero!

I've tried both the old 2.1 script and the new 3.0

The 3.0 (single track search by title) script works perfect but I'm missing the Catalog # (want the label catalog like in the release script v2.1, not beatport_track_id) and the track number from the release.

The 2.1 works but as soon as I add some # under Remove Fields it starts to flip out and add values in wrong tag fields. See below:

If you could update the release based scripts to 3.0 that would be absolutely fantastic.

You were never able to get the CATALOG # from the single track type scripts ever. You may be getting confused with the other release type ones. If you want the catalog on them use the release type one to parse BP with.

The API does not have the CATALOG # on the single track API page (See here)

Can you screen shot that part of the script you have?

Quite busy at other things ATM. But I seem to be using the V2.1 of the release type with no problems whatsoever. Re-download it and try again.

Thanks for your reply.

This is the only part I've changed. Removed the # before the fields I don't want.

#################################################################
#				.:: R E M O V E    F I E L D S ::.				#
#################################################################

# REMOVE THE '#' BEFORE 'set' FOR FIELDS YOU WANT TO REMOVE FROM PARSING
#	set "coverurl"
#	set "album"
#	set "year"
	set "date"
#	set "catalog #"
#	set "publisher"				# RECORD LABEL
#	set "albumartist"			# ITUNES USES
#	set "track"					# NO'S OF TRACKS E.G. 01/06
#	set "title"					# TITLE AND TRACKS NEED TO BE DISABLED TO WORK
#	set "tracks"				# TITLE AND TRACKS NEED TO BE DISABLED TO WORK
	set "compilation"
	set "_length"
#	set "BPM"
#	set "InitialKey"
#	set "Genre"
#	set "Artist"
#	set "Mixartist"
	set "unsyncedlyrics"
	set "beatport_release_id"
	set "www"
	set "album artist"			# EXTRA FIELD, ALBUM ARTIST USED IN VLC AND OTHERS
	set "Comment"				# EXTRA FIELD
	set "mediatype"				# EXTRA FIELD
	set "discnumber"			# EXTRA FIELD
	set "totaldisks"			# EXTRA FIELD
	set "totaltracks"			# EXTRA FIELD

Then I changed it to this:

#################################################################
#				.:: R E M O V E    F I E L D S ::.				#
#################################################################

# REMOVE THE '#' BEFORE 'set' FOR FIELDS YOU WANT TO REMOVE FROM PARSING
#	set "coverurl"
#	set "album"
#	set "year"
	set "date"
#	set "catalog #"
#	set "publisher"				# RECORD LABEL
#	set "albumartist"			# ITUNES USES
#	set "track"					# NO'S OF TRACKS E.G. 01/06
	set "title"					# TITLE AND TRACKS NEED TO BE DISABLED TO WORK
	set "tracks"				# TITLE AND TRACKS NEED TO BE DISABLED TO WORK
	set "compilation"
	set "_length"
#	set "BPM"
#	set "InitialKey"
#	set "Genre"
#	set "Artist"
#	set "Mixartist"
	set "unsyncedlyrics"
	set "beatport_release_id"
	set "www"
	set "album artist"			# EXTRA FIELD, ALBUM ARTIST USED IN VLC AND OTHERS
	set "Comment"				# EXTRA FIELD
	set "mediatype"				# EXTRA FIELD
	set "discnumber"			# EXTRA FIELD
	set "totaldisks"			# EXTRA FIELD
	set "totaltracks"			# EXTRA FIELD

The field mess-up is over but the window where you can match files with titles doesn't show all titles of the release any more and it always formats tracks as 01/XX, as it doesn't look up which track within the release it is.

Have one more question. How do I get rid of the leading 0s in tracks?
E.g. I'd like 1/3 in stead of 01/03.

I do have 1 tip you could add to the script in the future. Add this to customization:

# RELEASETIME
	outputto "releasetime"
	sayoutput "year"

This will output year to releasetime tag, which is read as release date in iTunes.

Sorry to keep you busy, but I think I've found the cause of the problems.

I've removed the set "compilaton" line completely and now the fields mismatch is gone completely.

See attached my edit of your script. Also found out how to remove the leading 0s, although I'm not sure if replace "-" "" just in front of #TOTALTRACKS is still required.

BeatportEDIT_by__stevehero_RELEASE_Search_by_Titl_e.src (13.4 KB)

QUOTE (SB1 @ Nov 10 2012, 12:37) <{POST_SNAPBACK}>
#################################################################
#				.:: R E M O V E    F I E L D S ::.				#
#################################################################

# REMOVE THE '#' BEFORE 'set' FOR FIELDS YOU WANT TO REMOVE FROM PARSING
#	set "coverurl"
#	set "album"
#	set "year"
	set "date"
#	set "catalog #"
#	set "publisher"				# RECORD LABEL
#	set "albumartist"			# ITUNES USES
#	set "track"					# NO'S OF TRACKS E.G. 01/06
	set "title"					# TITLE AND TRACKS NEED TO BE DISABLED TO WORK
	set "tracks"				# TITLE AND TRACKS NEED TO BE DISABLED TO WORK
	set "compilation"
	set "_length"
#	set "BPM"
#	set "InitialKey"
#	set "Genre"
#	set "Artist"
#	set "Mixartist"
	set "unsyncedlyrics"
	set "beatport_release_id"
	set "www"
	set "album artist"			# EXTRA FIELD, ALBUM ARTIST USED IN VLC AND OTHERS
	set "Comment"				# EXTRA FIELD
	set "mediatype"				# EXTRA FIELD
	set "discnumber"			# EXTRA FIELD
	set "totaldisks"			# EXTRA FIELD
	set "totaltracks"			# EXTRA FIELD<!--QuoteEnd--></div><!--QuoteEEnd-->

I've copied the above section into the same v2.1 script and it works perfectly fine. See attached.


Download a program called Notepad ++ and you can toggle the lines shown attached on and off by right clicking and hitting the highlighted button shown.


QUOTE (SB1 @ Nov 10 2012, 12:37) <{POST_SNAPBACK}>
I do have 1 tip you could add to the script in the future. Add this to customization:
# RELEASETIME
	outputto "releasetime"
	sayoutput "year"
<!--QuoteEnd--></div><!--QuoteEEnd-->

In the next release.



Thanks for the quick reply.

I did get the same output. However, the window where you can match files with titles from the release did not show all the titles in the BP release. Also, 01/03 is not correct as the track is 03/03

Cheers. What syntaxis should I choose for the script though?

Great! Glad to be able to contribute.

Well something happened with your script. I asked you to re-download it and try it.

The attached image shows the highlighted text and I stated that in the reply. Please read the replies carefully.

Hey Guys,

I just started using this script and I must say, it's AWESOME! I have a few questions for you, if you don't mind:

1.) Most of the time when I try and search by Release, the script cannot locate the release. I usually have to manually navigate to the release page at beatports and use the release ID in order to run the script. Is there a reason/trick for this?

2.) My music library uses a combination of Genre and Style (style acts as a sub-genre). I think that most of the releases on Beatports fall within the 'Electronic' Genre, so I am wondering if there is a way to hardcode the Genre into the scripts so that I don't have to manually add it in afterwards?

2a.) Sometimes releases have different styles for different tracks, is there a way to pull al styles from the release and list them separated with a comma (in the STYLE tag)?

3.) When there are multiple artists for a release, I use the tag ALBUMARTISTSORT to list all the artists on the album followed by 'Various Artists' and separated by a semi colon. I only use this tag for releases with more than one artist. I use this so that in my music player, these releases will be listed under each artist in full, rather than just the individual tracks from the release. Is there a way to add this into the script?

4.) I also add the Release Type to each release (EP, Compilation, Album, etc...). I don't know if this information is on beatports, but is there a way to add it to the tagging screen as an empty tag? That way I can add that info in manually without having to go into the 'Extended Fields' section for each release?

5.) For tracks with featured artists, I use a FEATURING tag. Is there a way to pull this information into this field rather than the ARTIST field?

6.) I like to tag all my music with what Country the release was released in. I'm unsure if this information is available on Beatports. Is there a way to tag the Country as an empty value so I can manually add it on the tag dialogue?

Thanks for all your help guys, I really appreciate it!

-musicissuper

Singular. :slight_smile: And sorry for the late reply. Been very busy with other non-mp3tag stuff.

Thanks. I've no problem with this. Maybe take out the words 'original', 'extended' if they're there or other generic words that are not needed.

In the 'Beatport by stevehero release Search by Release.src' for example only change this part:

# GENRE
	outputto "Genre"<!--fontc--></span><!--/fontc-->

to

# STYLE
	outputto "Style"<!--fontc--></span><!--/fontc-->

Then under (enter):

#################################################################

.:: C U S T O M I Z A T I O N S T A R T S ::.

#################################################################

GENRE

outputto "Genre"
say "Electronic"<!--fontc--></span><!--/fontc-->

Do this for all scripts.

Not with ease and I won't have any plans to do so.

Not in beatport API as far as I know.

FEATURING is not a standard tag. What may I ask are you needing this for. What player reads this? See here.. It's a bit of fun http://www.last.fm/group/I+use+tags+with+%...featured+artist

Like no. 2 above add under customization starts.

#################################################################

.:: C U S T O M I Z A T I O N S T A R T S ::.

#################################################################

COUNTRY

outputto ""Country"
say "Enter Country"<!--fontc--></span><!--/fontc-->

Hope this is of help.

This is fantastic! Great work. I customized everything to my needs. One thing I couldn't seem to get was clearing the comment tag. I want the comment tag to be a blank field, essentially wiped of all text. How would I do this?

Clearing fields is quite simple.

#################################################################

.:: R E M O V E F I E L D S ::.

#################################################################

REMOVE THE '#' BEFORE 'set' FOR FIELDS YOU WANT TO REMOVE FROM PARSING

set "coverurl"

set "album"

set "year"

set "date"

set "catalog #"

set "publisher" # RECORD LABEL

set "albumartist" # ITUNES USES

set "track" # NO'S OF TRACKS E.G. 01/06

set "title" # TITLE AND TRACKS NEED TO BE DISABLED TO WORK

set "tracks" # TITLE AND TRACKS NEED TO BE DISABLED TO WORK

set "compilation"

set "_length"

set "BPM"

set "InitialKey"

set "Genre"

set "Artist"

set "Mixartist"

set "unsyncedlyrics"

set "beatport_release_id"

set "www"

set "album artist" # EXTRA FIELD, ALBUM ARTIST USED IN VLC AND OTHERS

set "Comment" # EXTRA FIELD

set "mediatype" # EXTRA FIELD

set "discnumber" # EXTRA FIELD

set "totaldisks" # EXTRA FIELD

set "totaltracks" # EXTRA FIELD

Simply remove the '#' from the front of ' set "Genre"' like above