Added profile scraping in try/catch block. Re-added boobs enhanced info to actor page.
This commit is contained in:
@@ -183,39 +183,43 @@ function mergeProfiles(profiles, actor) {
|
||||
|
||||
async function scrapeActors(actorNames) {
|
||||
await Promise.map(actorNames || argv.actors, async (actorName) => {
|
||||
const actorSlug = actorName.toLowerCase().replace(/\s+/g, '-');
|
||||
try {
|
||||
const actorSlug = actorName.toLowerCase().replace(/\s+/g, '-');
|
||||
|
||||
const actorEntry = await knex('actors').where({ slug: actorSlug }).first();
|
||||
const profiles = await Promise.all(
|
||||
Object.values(scrapers.actors)
|
||||
.map(scraper => scraper.fetchProfile(actorEntry ? actorEntry.name : actorName)),
|
||||
);
|
||||
const actorEntry = await knex('actors').where({ slug: actorSlug }).first();
|
||||
const profiles = await Promise.all(
|
||||
Object.values(scrapers.actors)
|
||||
.map(scraper => scraper.fetchProfile(actorEntry ? actorEntry.name : actorName)),
|
||||
);
|
||||
|
||||
const profile = mergeProfiles(profiles, actorEntry);
|
||||
const profile = mergeProfiles(profiles, actorEntry);
|
||||
|
||||
if (profile === null) {
|
||||
console.log(`Could not find profile for actor '${actorName}'`);
|
||||
await updateActor(profile, true, false);
|
||||
if (profile === null) {
|
||||
console.log(`Could not find profile for actor '${actorName}'`);
|
||||
await updateActor(profile, true, false);
|
||||
|
||||
return;
|
||||
return;
|
||||
}
|
||||
|
||||
|
||||
if (actorEntry && profile) {
|
||||
await createActorMediaDirectory(profile, actorEntry);
|
||||
|
||||
await Promise.all([
|
||||
updateActor(profile, true, true),
|
||||
storeAvatars(profile, actorEntry),
|
||||
]);
|
||||
|
||||
return;
|
||||
}
|
||||
|
||||
const newActorEntry = await storeActor(profile, true, true);
|
||||
|
||||
await createActorMediaDirectory(profile, newActorEntry);
|
||||
await storeAvatars(profile, newActorEntry);
|
||||
} catch (error) {
|
||||
console.warn(actorName, error);
|
||||
}
|
||||
|
||||
|
||||
if (actorEntry && profile) {
|
||||
await createActorMediaDirectory(profile, actorEntry);
|
||||
|
||||
await Promise.all([
|
||||
updateActor(profile, true, true),
|
||||
storeAvatars(profile, actorEntry),
|
||||
]);
|
||||
|
||||
return;
|
||||
}
|
||||
|
||||
const newActorEntry = await storeActor(profile, true, true);
|
||||
|
||||
await createActorMediaDirectory(profile, newActorEntry);
|
||||
await storeAvatars(profile, newActorEntry);
|
||||
}, {
|
||||
concurrency: 3,
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user