Improved q so missing date element returns null.
This commit is contained in:
parent
3891a6e86b
commit
ab82329171
|
@ -339,13 +339,18 @@ async function scrapeActors(actorNames) {
|
|||
const sources = argv.sources ? argv.sources.map(source => [source, scrapers.actors[source]]) : Object.entries(scrapers.actors);
|
||||
|
||||
const profiles = await Promise.map(sources, async ([scraperSlug, scraper]) => {
|
||||
const profile = await scraper.fetchProfile(actorEntry ? actorEntry.name : actorName);
|
||||
try {
|
||||
const profile = await scraper.fetchProfile(actorEntry ? actorEntry.name : actorName);
|
||||
|
||||
return {
|
||||
...profile,
|
||||
name: actorName,
|
||||
scraper: scraperSlug,
|
||||
};
|
||||
return {
|
||||
...profile,
|
||||
name: actorName,
|
||||
scraper: scraperSlug,
|
||||
};
|
||||
} catch (error) {
|
||||
console.log(scraperSlug, error);
|
||||
return null;
|
||||
}
|
||||
});
|
||||
|
||||
const profile = await mergeProfiles(profiles, actorEntry);
|
||||
|
|
|
@ -7,9 +7,9 @@ function q(context, selector, attrArg, trim = true) {
|
|||
const attr = attrArg === true ? 'textContent' : attrArg;
|
||||
|
||||
if (attr) {
|
||||
const value = context.querySelector(selector)[attr];
|
||||
const value = context.querySelector(selector)?.[attr];
|
||||
|
||||
return trim ? value.trim() : value;
|
||||
return trim ? value?.trim() : value;
|
||||
}
|
||||
|
||||
return context.querySelector(selector);
|
||||
|
@ -26,7 +26,9 @@ function qall(context, selector, attrArg, trim = true) {
|
|||
}
|
||||
|
||||
function qdate(context, selector, format, match, attr = 'textContent') {
|
||||
const dateString = context.querySelector(selector)[attr];
|
||||
const dateString = context.querySelector(selector)?.[attr];
|
||||
|
||||
if (!dateString) return null;
|
||||
|
||||
if (match) {
|
||||
const dateStamp = dateString.match(match);
|
||||
|
|
Loading…
Reference in New Issue