【发布时间】:2020-11-29 16:45:33
【问题描述】:
我正在尝试使用 NodeJS、puppeteer 和 Cheerio 收集 github 贡献者的见解。
const cheerio = require('cheerio');
const puppeteer = require('puppeteer');
const url = 'https://github.com/grey-software/grey.software/graphs/contributors';
(async () => {
const browser = await puppeteer.launch();
const page = await browser.newPage();
await page.waitForSelector('#contributors', {
visible: true,
})
await page.goto(url);
const pageContent = await page.content()
const $ = cheerio.load(pageContent);
$('.contrib-person').each(function (i, elem) {
console.log(elem)
});
await browser.close();
})();
运行上面的代码时出现以下错误
UnhandledPromiseRejectionWarning:TimeoutError:等待选择器“#contributors”失败:超时超过 30000 毫秒
#contributors div 应该在 30 秒内加载,但我总是遇到此超时。 注意:page.waitForNavigation() 给出相同的超时错误
【问题讨论】:
标签: javascript node.js web-scraping puppeteer cheerio