【发布时间】:2021-06-16 04:12:28
【问题描述】:
我正在尝试抓取 Facebook 市场,但只有第一个添加被抓取,任何人都可以建议一种方法来抓取整个添加列表
代码
(async () => {
const browser = await puppeteer.launch({ headless: false });
const page = await browser.newPage();
await page.setViewport({ width: 1366, height: 500 });
let url = 'https://www.facebook.com/marketplace/nyc/search/?query=cars';
await page.goto(url, {
waitUntil: 'networkidle2',
});
//await autoScroll(page);
console.log('scraping...')
await delay(4000);
let data = await page.evaluate(() => {
let carData = document.querySelectorAll('div [class = "fome6x0j tkqzz1yd aodizinl fjf4s8hc f7vcsfb0"]');
const cars = []
carData.forEach((element) => {
// cars.push(element.innerText)
let add = element.querySelector('div [class = "sonix8o1"]');
cars.push(add.innerText)
})
return cars
});
console.log(data)
})();
我只得到一个输出,我想要实现的是单独访问每个数据
【问题讨论】:
标签: javascript node.js web-scraping puppeteer