Versatile C++ game scraper: Skyscraper
-
Hi @muldjord and thanks for the amazing job!
I've read your arguments about adding zip file support and would really appreciate you to reconsider.
The compression standards idea doesn't matter if you use no-intro romsets, which are pretty much the standard. It is not usual at all that you have more than one rom inside the zips too. People that have very large collections do save tons of space. Even if you you just have few roms, that should apply most of time for every single file. and even if you still think it is not the best to have compressed roms, there are lots of people that have a different opinion and right now they would need to do much stuff manually.
Best regards and thanks for bringing another scraper to the game! -
I don't suppose it would be possible to have an 'all' option for the -s switch that goes through every scraper for you for your selected system and then does the localdb one last to tie all results from all scrapers together?
I'm just not sure if I sould be overwriting the gamellist.xml and skipping games that already exist or not to try and get as complete a collection as possible and should I be running localdb after every other scraper finishes or can I continue using every scraper.
Thanks in advance.
-
@paradadf I agree, I'll add zip support for all platforms.
-
@LocVez I suggest simply scripting it to do so. That's what I do myself. :) And yes, just overwrite the gamelist.xml for each runthrough and don't ever skip. If you skip existing it won't add the resources for the games that have already been found. So overwrite, never skip.
When you run it with localdb last, it will create a "perfect" one using all resources from earlier scrapings. :)
-
Skyscraper 1.8.2 released: https://github.com/muldjord/skyscraper
- Added support for 'coleco' platform
- Added support for 'pcengine' platform
- Added zip support to all platforms per request from users
2 new platforms added and support for zip files for all platforms. :)
Have fun!
-
Just tried this out for the first time by scraping my NES collection.
Wasn't terribly pleased with how it came out so I wanted to get rid of everything and rescrape with a different scraper. However, no matter what I do, I can't get rid of the descriptions and images this downloaded.
I have deleted the gameslist and downloaded_images from /opt/retropie/configs/all/emulationstation. There is nothing in those folders but the images and descriptions still show up in EmulationStation.
I have rebooted. Is there anywhere else these are stored? Thanks!
-
@livefastcyyoung Read the readme. It's all well described in there. If you check the output of Skyscraper at the beginning, you'll also notice where the data is saved.
Concerning your trouble with descriptions you don't like, you can either delete the entire local nes database cache by deleting '~/.skyscraper/dbs/nes' and start over. I wouldn't do that though, I instead recommend simply finding out which source you prefer to have the descriptions coming from, and prioritizing that source for description in '~/.skyscraper/dbs/nes/priorities.xml', and then scrape using '-s localdb' afterwards.
Feel free to ask further questions, but please read the readmes thouroughly first. :) Thanks.
-
I have deleted the entire /.skyscraper folder and it's still displaying the Skyscraper scraped art and game info. I'm at a loss.
-
@livefastcyyoung Deleting Skyscrapers local resources won't alter your gamelist for EmulationStation. You need to delete the Emulationstation specific gamelist.xml and images folder to do that. As I mentioned, both are listed at the beginning when you scrape the platform.
-
I have done that. There is no folder for NES in the downloaded_images and the gameslist.
I guess I'll have to just keep digging. I have deleted these before with no issue to rescrape. I have never had this issue before.
-
@livefastcyyoung Those are not the right folders. Unless you set them manually when scraping, the correct folder is ~/RetroPie/roms/nes/images and ~/RetroPie/roms/nes/gamelist.xml. Doesn't it say that when you run the scraper? It should clearly state a gamelist and images folder at the very beginning.
Btw, you DON'T need to delete those to rescrape. Just choose to overwrite and NOT skip. But please, read the readme's.
-
@muldjord Thank you for your advice on scripting the scraping. I have now done so but, alas, now find my IP banned from the games database. According to https://www.gameex.info/forums/topic/10930-gamesdbase/ - Would it be possible to add emumovies as a scrape resource, not only do they promote sharing but they are partnered with the games database and I have a lifetime sub with emumovies too....
Thanks again!
-
@LocVez Yes, gamesdatabase will ban you if you overuse it.
I had a quick look at emumovies, I'll ask them for developer access to the api and let you know if I get it. Then I will include it if the API they provide fits with Skyscraper. It probably does, but I don't know atm. :)
-
@muldjord They probably will. Just as long as you can input your username and password.
Been a lifetime member there for ages.
-
Opps dobbel post..
-
@muldjord Many thanks!
-
@LocVez They banned me in the past, but after 2 weeks it worked again. Im glad it wasnt forever.
-
Wooooooo!!! Video tutorial!!!
Please spread the word! :)
Please, please, PLEASE check this out if you are new to Skyscraper. I have a feeling most people only use Skyscraper to just scrape once using the default scraper and then leave it like that. It really is too bad, since the most important feature in Skyscraper is the local db cache. This video explains why it's important.
-
@muldjord Thanks for the video. As i see now, i did it right. What bugs me a little is what happend in your video.
After the default scrape, you scraped with thegamesdb.
Then you scraped with uvlist and afterwards with localdb.
Result: 1 game skipped.
Then you scraped with screenscraper and afterwards localdb.
Result: 2 games skipped.Hope you understand what i try to say. :)
This happened on my retropie aswell. -
@analoghero Ah, I know why! It's because the search match becomes too low for one of the games because of how the title is prioritized from the different scraping modules. So one title makes the search match go below 50% which it didn't when scraping with the source originally. So basically it is /meant/ to do this, but I should still look into it. I'll figure something out for 1.8.3.
Bottom line, it's not an error, just lower the minMatch to '0' with '-m 0' when scraping with localdb and you'll get the nice result again. :) But I do want this to make sense to the user, so I'll do something about it anyways.
I do have another very minor bug I found while investigating this though, so I'm glad you brought it up. Either way, 1.8.2 is working just fine, so no need to hold your breath for 1.8.3. :)
EDIT: I've had some more time to think about this "problem". And I've decided to leave it, simply because it isn't an error at all. I can see how it seems confusing that addmore resources from more scrapers suddenly makes it skip more games than previously. But the explanation is simply that the title of a game from a certain module is prioritized above the other titles, and that title makes is go below the minimum match percentage threshold. This is easily "fixed" by lowering the threshold. And it is /supposed/ to work like this. The priorities can easily be changed inside the 'priorities.xml' file as described in the documentation on github. So in the case of the Youtube howto I made, lowering the 'title' priority for 'screenscraper' to go below that of 'mobygames' will /also/ make the "problem" go away. I am absolutely in agreement that this seems puzzling if you don't understand or make use of the priorities. It seems like it "going backwards" when you scrape with more scrapers, when in fact it just got a title from a new scraper that was of higher priority and then gave a worse percentual match to the filename. That's all it is. And it's not an error. :)
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.