[SOFT] Universal XML Scraper V2 - Easy Scrape with High Quality picture
-
@hansolo77 said in [SOFT] Universal XML Scraper V2 - Easy Scrape with High Quality picture:
[11:05:09] - > $vSource_ImagePath = \\retropie\roms\..\configs\all\emulationstation\downloaded_images\atari2600
So to me, this means it's checking first to see if images exist somewhere in the \roms path. That can't be right. I don't have any of my other scrapers configured to store images and gamelists next to the roms. Nevertheless, I checked that path, and there still isn't any artwork in /home/pi/retropie/roms/atari2600, just an added text file about what's missing.
Interestingly, there is a NEW folder in the /home/pi/retropie/roms path called "configs" which wasn't there before. When I go in there, there are a few more new nested folders... so now there is a path line going clear to /home/pi/retropie/roms/configs/all/emulationstation. Inside there, I see 2 folders "downloaded_images" and "gamelists". Ah-hah... checking THOSE folders does indeed reveal the uploaded artwork.
The
..
means to go back one directory, so\\retropie\roms\..\configs\all\emulationstation\downloaded_images\atari2600
would result in\\retropie\configs\all\emulationstation\downloaded_images\atari2600
. But I also stumbled about it and I think it does not work as intended. I made a ticket about my problem here:
https://github.com/Universal-Rom-Tools/Universal-XML-Scraper/issues/51For me it worked after I replaced in
XML file name
andFolder Name where pictures will be downloaded
(Autoconfig) the%Source_RootPath%\..\configs
directly with\\mypi\configs
.But this path still did not get used after changing it and it sticked to the old path when scraping. I found the old path also in
UXS-config.ini
. After fixing it there manually too it worked for me... -
sorry to answer so late...
This is how it work :
In Profil XML you have the "autoconfiguration path" standard for retropie :
<AutoConf> <Source_RootPath>\\retropie\roms</Source_RootPath> <Target_XMLName>%Source_RootPath%\..\configs\all\emulationstation\gamelists\%System%\gamelist.xml</Target_XMLName> <Target_RomPath>/home/pi/RetroPie/roms/%system%/</Target_RomPath> <Source_ImagePath>%Source_RootPath%\..\configs\all\emulationstation\downloaded_images\%System%</Source_ImagePath> <Target_ImagePath>/home/pi/.emulationstation/downloaded_images/%system%/</Target_ImagePath> </AutoConf>
Explaination :
Source_RootPath is where UXS Autoconfig look for system folder
Target_XMLName is where UXS put the final gamelist.xml
Target_RomPath is where emulationstation will found the rom (UXS put this path in gamelist.xml)
Source_ImagePath is where UXS will download picture (mix or not)
Target_ImagePath is where emulationstation will found the picture (UXS put this in gamelist.xml)I added some "tag" that will be replace automatically :
%Source_RootPath% will be replaced by the path in <Source_RootPath>
%system% will be replaced by the folder of the system you selected in autoconf
%SystemDir% will be a merge of %Source_RootPath%+%system%Autoconf will replace path and put it in UXS-config.ini, when you select a system in the menu "scrape/select a system"
And the scrape use path in UXS-config.iniSo now if we examin the standard path :
Source_RootPath = \retropie\roms
Target_XMLName = %Source_RootPath%..\configs\all\emulationstation\gamelists\%System%\gamelist.xml
-> If we select nes as system :
\retropie\roms\..\configs\all\emulationstation\gamelists\nes\gamelist.xml (in UXS-config.ini)
So :
\retropie\configs\all\emulationstation\gamelists\nes\gamelist.xml (is the reel path /../ meaning 1 step behind)
Target_RomPath = /home/pi/RetroPie/roms/%system%/
-> If we select nes as system : /home/pi/RetroPie/roms/nes/ (in UXS-config.ini)
Source_ImagePath = %Source_RootPath%\..\configs\all\emulationstation\downloaded_images\%System%
-> If we select nes as system :
\retropie\roms..\configs\all\emulationstation\downloaded_images\nes (in UXS-config.ini)
So :
\retropie\configs\all\emulationstation\downloaded_images\nes (is the reel path /../ meaning 1 step behind)
Target_ImagePath = /home/pi/.emulationstation/downloaded_images/%system%/
-> If we select nes has system : /home/pi/.emulationstation/downloaded_images/nes/ (in UXS-config.ini)It's a little bit complexe... Sorry, but it's needed to "respect Retropie Path" and keep a simple way to configure path with changing only the Source_RootPath.
So if you want to scrape a USB Key having the "same" type of path, you juste have to change the \retropie\roms By E:\roms for exemple, and all other path will adapte themself...Last but not least, the easiest way still to use Path like Sselph's scraper (or the path used in Recalbox) where all gamelist and downloaded picture are directly in the rom system folder.
That's why I create a new profil in the last version with [Sselph Path] : much much more easier ;)
-
@screech Yes, I see what the idea is supposed to be, but it doesn't work that way. It's not saving the information (images/gamelist) in the /home/pi/.emulationstation/downloaded_images/nes/ path. It saves it in the /home/pi/retropie/roms/configs/all/emulationstation/downloaded_images/nes/ path.
-
That's weird :S
I just retry, and it works for me :S
I haven't retropie, so I make a network directory on my nas named Retropie, and connect a netdrive on it... (just to simulate the retropie).
And I try to scrape
Do I have this : http://hpics.li/841835b
So for me it's ok :S (from my point of view :S)
Can you try delete the UXS folder, and download the very last version ?
(I ask to delete the folder to be sure the "old" profil will be recreated) -
Just tested it again and I have to say for me really ".." does not work. A workaround for now is to go to
Autoconfiguration path configuration
and editXML file name
andFolder name where pictures will be downloaded
. Replace%Source_RootPath%\..\configs
with\\<host>\configs
. (enter the hostname instead of <host> ofc :)Important: After changing that you have to re-select the system in the menu "Select your system"!
After that it worked for me and UXS used the correct folders.
-
I think the problem is that you don't have a RetroPie to test this on. According to @vbs the problem is with the
\..\
inside the path. So I'm trying his approach now.
Fresh Install.. Open the program, go to Configuation, go to Path Configuration.... Get this screen:
Changed XML file path to
\\retropie\configs\all\emulationstation\gamelists\amstradcpc\gamelist.xml
Changed Directory where pictures will be downlo to\\retropie\configs\all\emulationstation\downloaded_images\amstradcpc
Will this only save for THAT system?
Fresh install still, go to Configuration, Autoconfiguration path configuration.. Get this screen:
Changed XML file name to
\\retropie\configs\all\emulationstation\gamelists\%System%\gamelist.xml
Changed Folder Name where pictures will be do to\\retropie\configs\all\emulationstation\downloaded_images\%System%
-
I added a %host% tag.... So now, it will work for standard Retropie Path and if you change these path to a usb stick for exemple, only Root system directory need to be changed ;)
And some other correction : V2.0.0.4
-
Maybe a silly question. I just started using Universal XML Scraper and it's downloading the game screenshots by default. I was hoping to get boxart or maybe try out 3D boxart and see how it looks. Is there a place to change this in the configuration?
-
of course you can @pomme ;)
just go to the option configuration menu. Select "picture" and wich picture you want ;)
(you can also select "alt picture" if the first one isn't found ;) ) -
Here's a question:
I just scanned my collection of Sega CD games. I don't have a lot because of the limited storage space, only like 6 games. The scraper came back and said it found 6 files, and 5 out of 6 roms. I looked in the correct downloaded_images path and discovered the one it missed was Loadstar. Apparently the scraper doesn't like my hashes, and tried to search by filename and came up short. When I looked on the website, there are indeed MANY Loadstar games listed, but none of them match my filename 100%. So what do I do in this case? Do I go into my files and rename them to match one that matches? Or do I try to submit a new ROM? If I need to submit, how do I go about doing that? -
@screech you have developed a great tool. So congratulations for your effort! Is there an option to configure UXS to check databases other than screenscraper.fr ? Because there are great 8-bit homecomputing systems with rich databases already populated that would be a fantastic alternative to enrich our RetroPie personal installs.
Thank you once more for your great tool. -
@hansolo77 for only 1 rom, the fastest way is to rename your rom with a matching name ;)
But if you want to add some rom to the db, just send me your missing.txt files ;)
I can add them, but they need to be associated after that to the matching game ;)@derebo sorry, for now it is not planned to add a new DB. But if you want, you are welcome to participate to Screenscraper, adding data and media missing in 8bit computer...
-
@screech Thank you, I'll just rename the one ROM. :)
Here's one more question.. Is there any way for the software to see that it's missing certain bits of artwork, and then update them with a future pass? For instance, I'm using the 4-way MIX. When browsing through my systems I notice some ROMs are missing things like their Boxart, and some are missing screenshots. So if I come back in a week or whatever and try to scrape again, will it replace those images with newer ones if they're available at screenscrapper.fr?
-
@hansolo77
Not possible in that way AFAIK. You can either make a full rescan, meaning it will rebuild everything from scratch or you can do an update but it will only create missing entries (not update existing ones).But there is a ToDo for it on GitHub:
https://github.com/Universal-Rom-Tools/Universal-XML-Scraper/issues/23 -
@hansolo77 You can also help out and add missing boxart, screenshot, metadata and so on.
-
Nice tool, tried it on my machine and found couple of roms not associated. How can I upload these missing rom hashs to the website?
Improvement suggestion: If you query the database for a rom and it can not be found, why not adding the hash and filename automatically to the db?
-
Hi @daeks , Sorry, you can't directly add roms hash to the DB, but you can send me your missing.txt file, and I'll check what I can do.
For the auto add to database, it's already existe ;) but with limitation : the missing rom must be scraped from 5 differents user to be send to moderation, then modo can associate it to the good game.
The aim is to avoid lot's of bad file (if you scrape your familly photo folder by mistake, we don't want to add them to the DB ;) )
-
@screech LoL
-
Hello and many thanks for this scrapper who look very usefull.
At first, excuse my english.
I'm using Retropie within kodi on a OSMC configuration with that https://discourse.osmc.tv/t/howto-retrosmc-retrogaming-on-osmc/6671 and everthing works fine. Except when I try Universal XLM scrapper.
I think that the problem come from bad path because my Pi is not "/home/pi/RetroPie..." but / OSMC/osmc/RetroPie..." so I have changed the autoconfiguration path with something like :
I kill the emulstation process (after changing the SSH parameters), the scrapping launch and finish well but when I came back to RetroPie no information on my roms.
A folder named "configs" is created on my Pi (\OSMC\osmc\configs) with lots of info in it but RetroPie won't get theses informations from there.
I must have done womething wrong with the paths I guess but what ?
Thanks for your help.
-
delete your UXS-config.ini file (when you relaunch UXS it will recreate it for you)
To change the autoconfig path, only change the "Root System directory" with your "reel" root directory
(I think it's //OSMC/osmc/RetroPie/roms )The other path will adapt themself to match the "corresponding Retropie Path"
An other solution, is to use The Retropie Profil with [Sselph path]
just change the "Root System directory" as well and try to scrape ;)The main difference is :
-
In the retropie profil, path match the retropie "standard" path.
-
In the retropie [Sselph's path] profil, downloaded-image and gamelist.xml are put in the rom system folder directly (it works well, and it's pretty easier to handle ;) )
For the "Kill emulationstation" function, be sure it is well killed (you can do it manually directly on SSH or on a terminal)... If not, the new scraped gamelist.xml isn't used... and Emulationstation will overwrite it with the old one...
-
Contributions to the project are always appreciated, so if you would like to support us with a donation you can do so here.
Hosting provided by Mythic-Beasts. See the Hosting Information page for more information.