Skip to main content

Notice

Please note that most of the software linked on this forum is likely to be safe to use. If you are unsure, feel free to ask in the relevant topics, or send a private message to an administrator or moderator. To help curb the problems of false positives, or in the event that you do find actual malware, you can contribute through the article linked here.
Topic: Album Art Downloader XUI (Read 2073889 times) previous topic - next topic
0 Members and 1 Guest are viewing this topic.

Re: Album Art Downloader XUI

Reply #3125
thank you so much, alex

Re: Album Art Downloader XUI

Reply #3126
Such a great program.  FWIW, with everything checked, the only sites that find images for me are Deezer, iTunes, MusicBrainz, LastFM Cover, YesAsia, Discogs, 45world CD Singles, Juno Download, and Qobuz (fr-fr).

The main one I'm interested in troubleshooting is 45cat as it's where I can find the best singles artwork.  I'm not sure if I'm supposed to be modifying its .boo script in some way?

Re: Album Art Downloader XUI

Reply #3127
Thanks. Unfortunately scripts tend to stop working over time, as websites change design or deliberately block access. If someone asks me to look at a specific script here I usually manage to un-break it. Of course if anyone else would like to fix a .boo script that has become broken, that would always be appreciated

Here's an updated 45cat script: 45cat.boo

Re: Album Art Downloader XUI

Reply #3128
Excellent! Thanks a ton, Alex.

Re: Album Art Downloader XUI

Reply #3129
Hey there! Absolutely loving this tool but I have a question about something I cant seem to find an answer to..
All the images that are downloaded have 'Folder-' at the beginning even if i set the preset to anything else (for example if I set it to CD the filename will be 'folder-CD'.
I hadn't realized and started to download a whole bunch of stuff once I got the Discogs working and realized i really mucked up!
Cheers for the help in advance.

Re: Album Art Downloader XUI

Reply #3130
All the images that are downloaded have 'Folder-'
Click the Options link just below the search box, and look in the "Save images to" box. Just before %preset% it probably says "Folder-", remove that and it won't be in the filename any more.

Re: Album Art Downloader XUI

Reply #3131
All the images that are downloaded have 'Folder-'
Click the Options link just below the search box, and look in the "Save images to" box. Just before %preset% it probably says "Folder-", remove that and it won't be in the filename any more.

Amazing! thanks so much!
I had actually already changed that and for some reason it did not save my setting when I tried. But I tried again and restarted the application and that seemed to have fixed it! Truly appreciate you for being quick to respond and of course for making such an awesome program!

 

Re: Album Art Downloader XUI

Reply #3132
When saving multiple covers from the same source, there is a dialog that pops up:



Is there a way to format "Options"> "Save images to" to avoid this pop-up by saving successive images with "%n" appended to filename? I've tried using %size% and %type%, but often the files have the same. Thanks.

Re: Album Art Downloader XUI

Reply #3133
Sorry, no, I've checked the source and there is no way of auto-appending a number without seeing this prompt.

Re: Album Art Downloader XUI

Reply #3134
Hi Alex.. I'm new using App and seems beautiful so thanks in advance for your work....

I'm fixing my music library and copying to Nas ( tags, names, covers ) and a big part of covers are presents in Discogs and Musicbrainz. I've a lot of Dance music that are part of Dj Collections ( not presents in Standard Web ).

There are pages like mastermixdj, dmc, djpools, ukdj, dance music club and others , that  sells digital music and have covers in their pages and can be downloaded with browser.

If you want i can write here all pages o send in PM ( i've not writed here because i don't know if is possible.)

All this services are services for dj's but very famous.. Is possible to create scripts for this type of pages or if i can read a page how to create a script, i can try to create myself.

Thanks in advance and sorry for my  english

Re: Album Art Downloader XUI

Reply #3135
Hi, if you have any web scraping experience, or want to learn it, then it would not be difficult for you to create a script, depending on how difficult the website makes it. I would suggest making a copy of one of the simple ones, like bandcamp.boo and see how you get on.

If you try this and want to ask any questions about the script formats or syntax I'll answer, but the fundamental web scraping techniques of being able to determine the search URL to fetch, and how to craft a regular expression to extract the image URLs from the results HTML is not something I can teach.

Re: Album Art Downloader XUI

Reply #3136
I have a little knowledge of php. editing etc etc but i can open a script with a text editor to understand how it works.

If you want i will send you the homepages in a private message because i don'tn know if is possible here... ( if possible , tell me and i write here )

I explain that i'm not writing to ask to have personals scripts created only for me but only understanding if is possible to use these pages with one o more scripts because ave very famous pages, especially for dj's

Thanks for losting time for my questions




Re: Album Art Downloader XUI

Reply #3137
I will do a worked example with you. Looking at, for example mastermixdj, I can do a test search on it and see that the search URL is https://mastermixdj.com/?s=

Running with the network inspector devtool open I can see that it's dynamically creating the results HTML by calling an API, it calls:
https://mastermixdj.com/wp-json/api/v1/get/search/results?type=albums&search=TheSearchTerm&limit=4 and also the same API with type singles and limit 10. When writing your script you can customise this to whatever you want, but for now let's just do albums and keep the same limit they have.

The JSON returned is nice and easy to deal with, we don't even have to do HTML scraping, so great.

For JSON, the idea is to create a class that matches the bits structure of the JSON returned that we are interested in, and then do:
Code: [Select]
json = JavaScriptSerializer()
searchResults = json.Deserialize[of (SearchResults)](jsonSearchResults)
on it to parse it. SearchResult is wrapped in () because in the case of MasterMixDj it's an array of results retuned. If it was a single object, it wouldn't have those parenthesis. The JSON structure returned by MasterMixDj is an array of objects, where the interesting bits of the object (for us) are labelled title, artwork and link, so this would mean a class like:

Code: [Select]
	class SearchResult:
public title as String
public artwork as String
public link as String

Now we've parsed the results, they must be reported to AlbumArtDownloader. This is done using the results.Add method, which takes the parameters object thumbnail, string name, string infoUri, int fullSizeImageWidth, int fullSizeImageHeight, object fullSizeImageCallback, CoverType coverType, string suggestedFilenameExtension. There are overloads with fewer parameters you can see at IScriptResults.cs. For our case, we know the artwork, title (name) and link (infoUri). For artwork, this source doesn't provide separate small thumbnail images, it just shows the full size images resized. So we won't bother with thumbnails and just provide the artwork as the thumbnail.

As we don't have a separate full size image, we can just ignore fullSizeImageCallback and pass null to that. It's what gets given back to us in the RetrieveFullSizeImage method, which again, as we don't have separate full size images, we don't care about.

For size, we don't know it. the source doesn't provide that info, so just use -1, -1 for "unknown". For cover type, it looks like they are all just front covers, so we can pass CoverType.Front for that and end up with:

Code: [Select]
		for searchResult in searchResults:
results.Add(searchResult.artwork, searchResult.title, searchResult.link, -1, -1, null, CoverType.Front)

Final result is attached.

There's more that could be done with this source. For example, looking at the album page I can see that there is a facility for getting thumbnails, by appending "-100x100" to the artwork between "primary" and "jpg" so we could use that for faster results without downloading the full size one for every result. I can also see that there are additional images that could be found by replacing primary with "additional-1" (and presumably numbers past 1 if they existed). I'll leave all of that as an exercise for the reader, though.

This should give you enough of an idea as to how to do it that you can work on other scripts. If you produce any, please post them here for others to enjoy too!

Alex