【发布时间】:2019-06-11 02:04:15
【问题描述】:
与 puppeteer 混在一起,但在任何地方都没有看到这个问题的答案,尽管它已经被问过几次了:
预期结果: 1.通过类名点击标签 2.等待新页面(链接在标签)完成加载 3. 新页面截图证明这个过程已经成功了
这是我的代码:
const puppeteer = require('puppeteer');
const browser = await puppeteer.launch()
const page = await browser.newPage()
await page.setViewport({
width: 800,
height: 600
})
await page.goto('https://www.example.com/')
await page.click('.targeted_class_with_a_tag')
await page.waitForNavigation({ waitUntil: 'networkidle2' })
await page.screenshot({
path: 'mouse_click.png'
})
await browser.close()
我希望屏幕截图包含通过单击标记导航到的页面。相反,它超时。如果我删除 waitForNavigation,它只会截取加载的初始页面。
谁能告诉我这里哪里出错了?
谢谢!
【问题讨论】:
-
虽然该示例无法真正重现,但请确保在单击触发导航的内容时使用
Promise.all模式,如in this answer 和this GH issue 所述。
标签: puppeteer