【发布时间】:2019-08-14 15:02:02
【问题描述】:
我正在从 youtube 上抓取数据并尝试获取 cmets 的数量。我正在尝试获取包含该值的元素,但如果 cmets 对视频禁用,则该元素根本不存在,我认为 waitForSelector() 在结束程序之前等待大约 30 秒。我如何告诉 puppeteer 等待该元素,例如 5 秒,如果它不存在,则继续执行其余代码?
这是我正在使用的代码-
await page.waitForSelector("yt-formatted-string.count-text.style-scope.ytd-comments-header-renderer")
let commentCount = await (await (await page.$("yt-formatted-string.count-text.style-scope.ytd-comments-header-renderer")).getProperty("textContent")).jsonValue()
【问题讨论】:
-
所以你想等待 5 秒而不是 30 秒?
-
根据文档github.com/GoogleChrome/puppeteer/blob/master/docs/…,您可以在
waitForSelector中设置超时选项
标签: javascript node.js puppeteer