[WS] Discogs (pone mod)


At first thanks a lot for your mod plone! I just registered here just because of your script.
I've one question: Which tag are you using for Mediatype? When I click on
Extras -> Options ->Tag-Panel -> Add -> MEDIATYPE
the discogs-tag like "Vinyl, 12'' EP" does not show up. I've used this field recently for storing this information. Aren't you using the mediatype-field mp3tag uses?

Another question: Can you tell me how to edit your script, to only store one of the following in MEDIATYPE:
Vinyl (i.e. Vinyl, 12", 45 RPM)
WEB (i.e. 2 x File, MP3, 320 kbps)
CD (i.e. CD, Compilation, Mixed)

And one last thing:
I would like to store the original year in this format yyyy-mm or yyyy if there is no month stored.

And once again, big thanks for your script! Now I'm one step closer to an ordered mp3 collection :slight_smile:

greetings TLO


I use DISCOGS_MEDIATYPE instead of MEDIATYPE because in many cases, the mediatype at discogs is not the same as my mp3s are from, e.g., discogs has often only the vinyl release listed when I have a web release mp3.
(See starting post for detailed listing of the tag fields the script is writing. Or open the exptended tag view in Mp3tag after you used my script: Alt+T :mt_tag: )

Information like Vinyl, WEB, CD is more commonly stored in the SOURCE tag-field. But there is no clear difference to be between MEDIATYPE and SOURCE. Maybe MEDIATYPE should be used to store information like Album/Single/Best-of/Compilation/Live Recording.
Discogs's Mediatype combines both, so I left it as it is.

Open the script with a text editor and search the following part:

change it like the following:

The changes are marked in bold type. outputto "Mediatype" changes the tag-field to MEDIATYPE as you want it. The regexpreplace replace the mediatype form discogs with the word in the second quotationmarks with if one of the word in the first quotationmarks is found. You can expand that list and make alternatives as shown with Vinyl.
For a list of the used formats at discogs, look here http://www.discogs.com/explore > Formats > Show More

If you edit the script, you have to edit all versions of it. I recommend the freeware text editor notpad++ There you can edit one script and paste the changes into the others automatically. But it's tricky with multiline replacements.

See the discussion of FreaQ and stevehero above how to do this. Or look at dano's discogs scipt to see how he is doing it: /t/1992/1

I have not included this in the script, because
a) i don't know if how different mediaplayers display different formats at YEAR
b ) the information is not always there at discogs
c) release pages is about different releases of the same album (master release page). these different releases often do not have the same release date. this is also true for the year itself, but you see the different years in the discogs-search-page/mp3tag-websource-index-window. With the month it gets to complex and unclear. You would have to check every release page to see the different dates if you want to get sure you have the first release date.
d) as it is this complex, I think the release dates at discogs are not always correct, discogs users see the release date in their country and just asume it to be the global release date. And also the other way around.


I'm working on a new major update to version 3.0

The main issue is, that there will be a mp3 file in which you can make settings for the script by changing the values of the mp3 file. After that, you get export scripts, which create the web sources scripts with your settings.

That takes web sources to another level by providing easy accessible options!

If you have any whishes for options, be quick and let me know!


Update Version 3.0

Here it is, the Uptdate. I changed the whole concept of the web scripts. You don't get ready-to-use webscripts anymore, but a action & export group which creates your customized scripts after you edit a special mp3 file which stores the your personal settings.

And that is what has changed:

New: Options, Options, Options:

  • You can freely choose the names of all tag-fields!!!
  • You don't have to write all tag-fields.
  • You can choose if you want to combine Style & Genre in one tag-field or not.
  • You can choose if you want to combine Credits, Notes & Barcodes and Other Identifierers in one tag-field or not.
  • You can split Barcodes and Other Identifierers into two fields if you want.
  • You can write the same information into different fields.
  • You can choose between American (YYYY-MM-DD) and European (DD.MM.YYYY) date format.
  • You can choose if you want the albumartist be written for single-artist-releases or not.
  • You can choose if you want to download the coverart or not.
  • You can choose if you want to write multible genres, styles, labels, catalog#s of a release into multivalue tag fields or into one tag field seperated by comma.
  • You can choose if you want to write discogs' "Artistname, The" & "Lablename, The" as "The Artistname" and "The Labelname".
  • You can choose if you want to write discogs' "Artistname (2)" & "Lablename (2)" as "Artistname" and "Labelname".
    The default stetting of all options is like they were on the previous versions of the script.

New: A export script to create cue files for dj sets in one file.

New: Additionally to the release year, the release date can now be written.

New: Barcodes and Other Identifierers can now be written.

  • see starting post for download -

I hope it works all now. Let me know if there are some troubles.


Hi pone,

Thanks for all your hard work on these tagging scripts - i use them all the time.

It's probably me being stupid but I thought I'd post what happened to me in case any one else makes the same mistake.

I thought I was going crazy because after editing the tag field values to my liking (I prefer "Release Date" instead of "Date" and copying albumartist to album artist for foobar compatibilty and splitting barcode from other identifiers.) and then performing the action -> create scripts I couldn't figure out why the changes weren't being applied. It turned out that the action wasn't overwriting the existing scripts but creating a new folder within the pogram directory labelled "$getenv(appdata)". Once i figured this out & pasted newly written script into correct location it worked a treat.

p.s. If you do any updates it would be nice to have TOTALDISCS, TOTALTRACKS, AND TOTALVINYLS.

Thanks again!



Oh, I haven't thought about this: You need the Mp3tag 2.48a or newer!

Because $getenv() is a new scripting function. $getenv(appdata) automatically gets the right directory in every Windows version where the mp3tag application data is stored.

Otherwise you have to manually move the files as you described it.

Thanks for pointing me to this.

I will see what i can do about TOTALDISCS, TOTALTRACKS, and TOTALVINYLS. These information is not stored at discogs, but it might be possible, I will have a look.

What is the difference between TOTALDISCS and TOTALVINYLS?
Would you count Side A and B as two or one VINYLS?

I think TOTALDISCS could be done by taking the discnumber of the last track.

For Vinyl I have no discnumbers. Maybe i can add replacements: a -> 1, b -> 2, c ->3, ...
Or should it be: a -> 1, c -> 2?

All this is a bit tricky and will not work for all releases, since the discnumber recognition depends on the way the track position is written at discogs.com. And this is not consitend with all pages.


Thanks for the quick response.

It would have saved a lot of grief had I known about the release compatibilty earlier :smiley:

I was getting TOTALDISCS, TOTALTRACKS and TOTALVINYLS from the script that Pufas wrote. I don't really understand how the scripts work but I'm sure it'll make perfect sense if you have a quick look.

Side A and B would be 1 vinyl, i.e. TOTALVINYLS is the number of physical bits of plastic.

I don't know if there is a difference between TOTALDISCS and TOTALVINYLS besides indicating the type of media. Maybe the two could be combined to be called TOTALMEDIA (this would then be inclusive of cassettes.)

So maybe TOTALTRACKS and TOTALMEDIA would be a good addition to the options in your script - I appreciate it's hard to be compatible with all Discogs releases so no worries if it can't be done.

Thanks again!


Just one day after my 3.0 update discogs has made changes on their site again.
Scripts are not working anymore, nor are the old versions.
I'm working on a new update again.


Wouldn't it be better if each tag related command block is saved in a separate file so it can be reusable in script (.src) source files? Web Source Framework Discussion A nice-to-have option.
Thus you change centrally a tag related source code.
And each script file could be easier managed.

Web Source Framework Discussion

My condolences!
This proves what I've always said. The Mp3tag source scripting is not flexible enough to adapt themself automatically to changes made in the xml/html source text.
It is a bottomless pit and you will constantly have to do with updating your scripts.



A few questions and clarifications while awaiting Discogs to come back up.

  1. Will the 2.7 script be usable? I know they change alot, and I've just configured the 2.7 the way I like it. So, will it still work?

  2. Following the instructions as I understood them to install 3.0...Where will the new 3.0 SRC be stored?

I may have gotten something wrong. Currently I still have the 2.7 SRC within the Source folder.

What I'm expecting to happen is , I select an MP3, click the Discog Pone under action and see a list of SRC for 3.0 modify and a folder is created under source - now - for 3.0.

What am I missing?


The 2.7 Script is not working anymore, right? The next working version will be 3.1. Maybe tonight.
Just tell me the things you configured in 2.7. I will built them into the new one as easy opitons.

You are right so far.
In any case after download & extract the zip file, you have first move the files into the mp3tag folder.
In the new version it's not the sources folder anymore, but actions and export. But I have included the folders structure in the zip, so it's enough if you move it all to %appdata%\mp3tag.
After exporting the web source script, the new files will be automatically stored in the right folder if you have Mp3tag 2.48a or newer. Otherwise they turn up in a new folder called $getenv(appdata) and you have to move them again.


I'm up to speed. As I was looking for temp music I downloaded, I noticed this file $getenv(appdata) and realize it was creating the scripts in the tem p locating... then reading further I understood a beta version was available... hopefully, it's start to sync up.

Has any come up with a method to get the profile/member data from Discog. I've added a Tag which shows the group members... If not, I'm currently manually inputting the data.


Exceleent Script.


Back in the game! Updated to 3.1 and working!

There are also a few improvements again:

New Field: Totaltracks
This gives you the number of the tracks of the release. You can set the field to TOTALTRACKS, what is a standard filed vor .m4a files. All other files store the totaltracks in the TRACK field like 1/18, 2/18, ..., this can't be done automatically via web script. But the information might be good anyway, because you see if your album is complete or not.

New Field: Rating
The rating from discogs.com. I don't care, but maybe you do.

New Fields: Totaldiscs, Mediatype, Releasetype
These fields split the infromation from the Format field which was already written. You can write all four fields or only some of them. Do as you like.
Format has always the full information.
The information from Totaldiscs, Mediatype, Releasetype are connected with ";" if you set them to the same field.

Changed: The new scripts will not have the version number in the name anymore. By this, you don't have to delete the old scripts manually. You still have to delete the discogs pone mod 3.0 scripts this time. But in the future they will always be called discogs pone mod.
You can check the version of you script now in the Adjust Tag Information Window when you use the web script. Additonally the version is stated in the TITLE field of the Discogs Pone Web Script Settings.mp3 file.

New: Action Group Update Settings Mp3 File
You need this group if you have your settings already stored in a Discogs Pone Web Script Settings.mp3 file downloaded with an earlier version of the script (i.e. v.3.0). In this case, this action group adds the new field to the file without deleting your settings you have made before.
You can see to what version your Discogs Pone Web Script Settings.mp3 file is updated in its ARTIST field.

Fixed: The automatic search term replacements for the API-List Artist script changed Terms like Queens Of The Stone Age to Queens of Stone Age, The. That has been fixed, now only name with The at the begin are changed. The same goes for the API-List Label script.

Improved: The automatic search term replacements for the Search by... scripts which use Album has been improved.

Fixed: If you set the options of the scripts to write Barcodes in a extra field and Other Identifiers to the Pone Multiline Field (UNSYNCEDLYRICS per default) and the release has only a Barcode without Other Identifiers, the headline "Other Identifiers:" was written to the Pone Multiline Field nevertheless. This has changed now.

Changed: Extra Artists are now written "Remix by: Name" instead of "Remix by - Name"

Tell me if you find some problems. The scripts has become pretty complicated, so it gets harder for me to check all eventuallities.

As always: Download is in the starting post and your feedback is welcome!


Ho Pone,

Just tweaked to my liking & tried out your script - it seems to be working really well. :smiley:

Thanks again for your work on this - it's appreciated.


I previously used Pufas' script (I think), but I forgot to back up the app data before I formated :confused: Now I can't remember my setup since I modified stuff a bit.

So I'm giving this one a shot instead. Can someone describe or link me to a step by step how to use this script? Thanks!


What points are unclear?
I gave a step by step instruction in the starting post:
[WS] Discogs (pone mod)


First of all - thanks so much for the script - it seems it's the only working Mp3tag Discogs script right now. Much appreciated!

As to the feedback there seems to be a small bug on Windows 7 (newest Mp3tag version) - the action "Create Scripts" instead of pasting the new script files in proper folders creates new folder "$getenv(appdata)/Mp3tag/..." - I just pasted the files into proper folder- no problem for me :wink:

BTW I was wondering - are you using the Discogs API in your scripts? Or are you just parsing HTML files?


That "bug" depends not on the Windows version but on the Mp3tag version. I think with newest version you mean 2.48. But there is a newer development build 2.48b:
Mp3tag Development Build Status
I was a bit quick to use the new scripting funtion $getenv() there, which gives you automatically the right program folder with $getenv(appdata)/Mp3tag/ (in fact, this new function brought me to the idea to make the web scripts out of export scripts).
When you have a older version, the scripting function is not recognized and you get a new folder as you describe.

I parse the HTML files with my script. API is used only be some of the search modes. Maybe I should switch to API completly, that would more stable. But I would have to set them up completly new. But I was already thinking about switching to API this time when discogs changed their script. I've had to change so much things with this freaky html code, maybe it would have been easier to switch to the clear structure of the API sites.


Thx for spending the time and writing a very useful script.
I'm trying to use the option total_tracks and changed it from no to TRACK. If I'm correct it is supposed to combine the track and total count in the field track (as 1/16, 2/16 etc). But it doesn't seem to work, it just gives me 1, 2, 3 etc. What do I do wrong? And can it be changed to add leading zero's (01/16, 02/16, etc)
I am aware this can be done with a command as
(format "TRACK":$num(%track%,2)/$num(%_total_files%,2)) which I use currently.