mamescraper is an open source fast and simple scraper that can scrap mame games information and images from 'mame.bigode.net' or 'adb.arcadeitalia.net' and generate a xml for use with EmulationStation.
It should run on all platforms (Windows, Linux, Mac, etc...) that have Python 2 installed. The program uses only Python standard library for maximum compatibility.
For Windows, a self contained executable file is available to download.
mamescraper can:
- Download images flyers and titles
- Run with multiple workers to increase download/scrap speed
- Read an existing xml file to scrap for missing games only
Currently it supports two sources with drastically different scraping methodologies.
The default source (bigode) is a lot faster because the scraper will download an entire mame database (1.1MB compressed) and scrap all the games information in one go. Besides that, this source uses a CDN and a very fast webserver to serve the images, resulting in faster responses and downloading speed overall.
The adb source is a more traditional approach, for each game found, the scraper will do a http request to get the information needed and then will download the appropriate image.
In my tests, I was able to scrap an entire mame 037b5 set (2241 roms) in less than two minutes using the default 'bigode' source and 10 workers threads.
A useful use case is to run the scraper using the default 'bigode' source (since it's faster) and if a game is not found, just run the scraper again in 'append' mode using 'adb' as source to scrap only the missing games.
Download from releases.
More info, usage and source code on GitHub.
A huge thanks to AntoPISA creator of Progetto Snaps for the images and tons of mame resources.
Also, a huge thanks to Motoschifo creator of Arcade Database for the awesome arcade database website.
Enjoy