Skip to content

[Feature] Multithreaded Screenscraper Scanning #1781

@AROAH1337

Description

@AROAH1337

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.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions