-
-
Notifications
You must be signed in to change notification settings - Fork 326
Description
Is your feature request related to a problem? Please describe.
Currently, as far as I can tell, while the scraping of each individual metadata provider is asynchronous per-ROM, there is no support for Screenscraper's additional scraping threads for supporters, as each scan job waits until the others are done before moving onto the next game.
Describe the solution you'd like
Optimally, I'd like to allow each metadata source to scan completely asynchronously, but I think with the current design this would cause metadata to be overwritten by scans after the first provider's.
In the short-term, a separate, configurable "Screenscraper (multithreaded)" source could be added which does not permit being used with any other sources in the same scan job (or at least warns against it). Since different donation levels offer differing numbers of threads, there would need to be something like an environment value to configure the number of threads.
Describe alternatives you've considered
One could use a dedicated scraping utility, as I have in the past, but I don't know of a straightforward way to migrate the assets and data from that other utility into Romm's storage structure without a bunch of bash scripting that I'm frankly not knowledgeable enough to do in a reasonable length of time.
Additional context
I don't know how rate limiting works with the threaded scraping feature, so that may be something else to configure, since I seem to recall seeing a rate-limiting-workaround in the scanner code that waits a varying length of time between requests. Presumably, that would be at least less strict when you're a donor.