如何在木偶操作中获取超时内容(无头铬)?

时间:2017-12-04 16:29:41

标签: puppeteer google-chrome-headless

我们正在使用木偶操作员在数百个网站和网址上运行自动化测试。其中一些网站速度很慢,并且会暂停。通常情况是这样,因为有一个广告没有完成加载。因此,增加超时不是一种选择。

有没有办法在超时发生时获取当前呈现的HTML(DOM)? [CONCURRENT]仅返回仍未决的承诺。

1 个答案:

答案 0 :(得分:0)

您可以使用evaluate之类的东西,它会注入一个自定义JavaScript函数来执行。但是,如果线程真的被锁定了#34;那么它可能会遇到同样的问题。

const body = await page.evaluate(() => document.documentElement.outerHTML);

您可能还需要通过捕获goto超时然后尝试上述内容来更灵活地编写脚本编排方式。