const _ = require('lodash'); const genericVinParserFactory = require("./generics/generic-vin-parser"); const {log} = require('clew-logger'); module.exports = { baseUrl: 'davidsclassiccars.com', execute: async function (page) { const pageLoadIndicator = '.bx-viewport'; await page.waitForSelector(pageLoadIndicator); const imageSelector = '.carimage > img'; 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('src'), carouselItem); return { url: this.baseUrl + src }; })); return sources; }, parseVIN: genericVinParserFactory({ vinElementSelector: `table.car-features tbody tr td.options-full span` }), parseMileage: async function (page) { return null; } }