为了账号安全,请及时绑定邮箱和手机立即绑定

Puppeteer 中的异步/等待等待页面加载

Puppeteer 中的异步/等待等待页面加载

万千封印 2021-09-30 15:03:16
使用 async/await,我如何处理等待页面加载直到读取它?我在网站上有一个长期运行的 PHP cron。为了解决超时问题,它将问题分解成块,将浏览器重定向到下一步,最后以结束die('Done');这意味着页面的最终 html 看起来像这样。<html>    <head></head>    <body>Done</body></html>因此,对于 Puppeteer,我正在尝试执行长时间运行的脚本,然后让它继续运行,直到“完成”结束我的测试。const puppeteer = require('puppeteer');(async () => {  const browser = await puppeteer.launch({args:['--no-sandbox']});  const page = await browser.newPage();  await page.goto('https://example.com/Test/', {waitUntil: 'networkidle2'}); //dev  //await page.screenshot({path: 'example.png'});  // Eventually if script runs, will get run in PHP die('Done') so select text and quit.  // await page.waitForNavigation();  let element = await page.$("body").catch(() => {});  let text = await page.evaluate(element => element.textContent, element).catch(() => {});  if (text == 'Done') {    await browser.close();  }})();现在在一个只进行重定向而不是数据处理的测试站点上,它可以工作并关闭。在实际处理数据的页面上,所有得到的都是我的值element并且text是未定义的。
查看完整描述

1 回答

  • 1 回答
  • 0 关注
  • 1053 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信