You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

22 lines
728 B
JavaScript

const _ = require('lodash');
const {log} = require('clew-logger');
module.exports = function (config) {
return async function (page) {
const pageLoadIndicator = '.show-car-thumbs';
await page.waitForSelector(pageLoadIndicator);
const imageSelector = '.show-car-thumbs > a';
const images = await page.$$(imageSelector);
log.info(`Found ${images.length} images...`)
const sources = await Promise.all(images.map(async carouselItem => {
const src = await page.evaluate(el => el.getAttribute('data-original'), carouselItem);
if(!src) {
return {}
}
return { url: src };
}));
return sources;
}
}