openzim / zimfarm

Farm operated by bots to grow and harvest new zim files
https://farm.openzim.org
GNU General Public License v3.0
81 stars 24 forks source link

Replay from cached artefact #938

Open kelson42 opened 3 months ago

kelson42 commented 3 months ago

It would make a few things easier if we would be able to place a recipe from stored artefacts. This is in particular true for Zimit, where we have many scenarios were we want to relaunch the recipe without the burden (for both us and the upstream Web site) of the spider part.

This could work like this:

benoit74 commented 3 months ago

I like the idea.

Some suggestions:

A corollary of this feature is https://github.com/openzim/zimfarm/issues/940

rgaudin commented 3 months ago

This is in particular true for Zimit, where we have many scenarios were we want to relaunch the recipe without the burden (for both us and the upstream Web site) of the spider part.

That's an interesting question because zimit is not a regular scraper. It plays the role of a scraper but it's two tools run one after the other: a scraper (albeit for the WARC format) and a converter from WARC to ZIM. It's because WARC is a standard format and it provides value to convert from it that we didn't plug into browsertrix to write ZIM content directly.

All scrapers purposely (performance) run in one pass and directly store transformed data in ZIM. Specific data are sent to our S3 Optimization cache to save on both spiding and processing time when there are good chances this data is static.

I don't see how this can be useful for non-zimit scrapers.

For zimit, I see how this feature can be useful but only for development: when would we want to re-create a ZIM from the same WARCs? When our converter code failed. Are there other use cases?

We've refused to use Zimfarm as a dev tool for now but adding the artifacts was a clear step towards it…