forked from DebaucheryLibrarian/traxxx
Scraping upcoming Vixen scenes. Fetching release media groups sequentially to prevent collisions.
This commit is contained in:
@@ -343,32 +343,30 @@ async function storeReleaseAssets(releases) {
|
||||
[release.id]: pluckItems(release.photos),
|
||||
}), {});
|
||||
|
||||
const [posters, covers] = await Promise.all([
|
||||
argv.posters && storeMedia(Object.values(releasePostersById).flat(), 'release', 'poster'),
|
||||
argv.covers && storeMedia(Object.values(releaseCoversById).flat(), 'release', 'cover'),
|
||||
]);
|
||||
if (argv.posters) {
|
||||
const posters = await storeMedia(Object.values(releasePostersById).flat(), 'release', 'poster');
|
||||
if (posters) await associateMedia(releasePostersById, posters, 'release', 'poster');
|
||||
}
|
||||
|
||||
// ensure posters are available before fetching supplementary media
|
||||
await Promise.all([
|
||||
posters && associateMedia(releasePostersById, posters, 'release', 'poster'),
|
||||
covers && associateMedia(releaseCoversById, covers, 'release', 'cover'),
|
||||
]);
|
||||
if (argv.covers) {
|
||||
const covers = await storeMedia(Object.values(releaseCoversById).flat(), 'release', 'cover');
|
||||
if (covers) await associateMedia(releaseCoversById, covers, 'release', 'cover');
|
||||
}
|
||||
|
||||
if (argv.photos) {
|
||||
const photos = await storeMedia(Object.values(releasePhotosById).flat(), 'release', 'photo');
|
||||
if (photos) await associateMedia(releasePhotosById, photos, 'release', 'photo');
|
||||
}
|
||||
|
||||
// videos take a long time, fetch last
|
||||
const [trailers, teasers] = await Promise.all([
|
||||
argv.trailers && storeMedia(Object.values(releaseTrailersById).flat(), 'release', 'trailer'),
|
||||
argv.teasers && storeMedia(Object.values(releaseTeasersById).flat(), 'release', 'teaser'),
|
||||
]);
|
||||
if (argv.trailers) {
|
||||
const trailers = await storeMedia(Object.values(releaseTrailersById).flat(), 'release', 'trailer');
|
||||
if (trailers) await associateMedia(releaseTrailersById, trailers, 'release', 'trailer');
|
||||
}
|
||||
|
||||
await Promise.all([
|
||||
trailers && associateMedia(releaseTrailersById, trailers, 'release', 'trailer'),
|
||||
teasers && associateMedia(releaseTeasersById, teasers, 'release', 'teaser'),
|
||||
]);
|
||||
if (argv.teasers) {
|
||||
const teasers = await storeMedia(Object.values(releaseTeasersById).flat(), 'release', 'teaser');
|
||||
if (teasers) await associateMedia(releaseTeasersById, teasers, 'release', 'teaser');
|
||||
}
|
||||
}
|
||||
|
||||
async function storeRelease(release) {
|
||||
|
||||
Reference in New Issue
Block a user