Added Milfy to profile list, fixed Vixen not returning gracefully when profile is not found.

This commit is contained in:
DebaucheryLibrarian 2023-07-22 00:49:56 +02:00
parent 25f3dcf9a5
commit 80750b44dc
3 changed files with 22 additions and 12 deletions

View File

@ -461,17 +461,20 @@ async function curateProfile(profile, actor) {
} }
} }
curatedProfile.social = Array.isArray(profile.social) curatedProfile.social = [].concat(profile.social).map((social) => {
? profile.social.map((social) => { if (!social) {
try { return null;
const { href } = new URL(social); }
return href;
} catch (error) { try {
logger.warn(`Profile scraper for '${profile.entity.name}' returned invalid social link: ${social}`); const { origin, pathname } = new URL(social);
return null;
} return `${origin}${pathname}`;
}).filter(Boolean) } catch (error) {
: []; logger.warn(`Profile scraper for '${profile.entity.name}' returned invalid social link: ${social}`);
return null;
}
}).filter(Boolean);
curatedProfile.scenes = toBaseReleases(profile.scenes || profile.releases, profile.entity, actor) curatedProfile.scenes = toBaseReleases(profile.scenes || profile.releases, profile.entity, actor)
// attach actor to base scene, in case it was not scraped // attach actor to base scene, in case it was not scraped
@ -771,6 +774,10 @@ async function scrapeProfiles(actor, sources, entitiesBySlug, existingProfilesBy
return profiles.filter(Boolean); return profiles.filter(Boolean);
} }
async function associateSocials(profiles) {
console.log('profiles', profiles);
}
async function getActorNames(actorNames) { async function getActorNames(actorNames) {
if (actorNames.length > 0) { if (actorNames.length > 0) {
return actorNames; return actorNames;
@ -794,6 +801,8 @@ async function storeProfiles(profiles) {
const profilesWithAvatarIds = await associateAvatars(profiles); const profilesWithAvatarIds = await associateAvatars(profiles);
const actorIds = Array.from(new Set(profiles.map((profile) => profile.id))); const actorIds = Array.from(new Set(profiles.map((profile) => profile.id)));
// await associateSocials(profiles);
await upsertProfiles(profilesWithAvatarIds); await upsertProfiles(profilesWithAvatarIds);
await interpolateProfiles(actorIds); await interpolateProfiles(actorIds);
} }

View File

@ -247,6 +247,7 @@ const scrapers = {
mariskax, mariskax,
metrohd: mindgeek, metrohd: mindgeek,
milehighmedia: mindgeek, milehighmedia: mindgeek,
milfy: vixen,
milfvr: wankzvr, milfvr: wankzvr,
mofos: mindgeek, mofos: mindgeek,
mylf: teamskeet, mylf: teamskeet,

View File

@ -611,7 +611,7 @@ async function fetchProfile(actor, { channel }) {
}, },
}); });
if (res.ok) { if (res.ok && res.body.data?.model) {
return scrapeProfile(res.body.data, channel); return scrapeProfile(res.body.data, channel);
} }