在browserless.io中找不到选择器

时间:2019-09-16 20:46:55

标签: html node.js chromium puppeteer

在布袋戏中,我试图在页面中获得一个p元素,该元素是动态创建的。在本地,我通过以下方式启动人偶实例:

puppeteer.launch({
      headless: false,
      timeout: 90000,
      args: [`--no-sandbox`, `--disable-setuid-sandbox`],
    });

我可以通过以下方式到达页面中的元素:

await page.goto(URL);
await page.waitForSelector(`#selectorName`, {
  timeout: 90000,
});

const res = await page.evaluate(() => {
  const p = document.querySelector(`#selectorName`);
  return p.innerHTML;
});

我想在产品环境中使用browserless.io,所以我将按以下方式连接到实例,而不是在本地启动Chromium:

puppeteer.connect({ browserWSEndpoint: wss://chrome.browserless.io?token=API_TOKEN })

但是,此设置中的waitForSelector函数会导致超时。该URL是相同的,我检查了页面是否仍打开所需的URL(通过page.url()),并且在本地打开页面时p元素仍然存在。当我在browserless.io中呈现页面时,是否需要以其他方式获取选择器?

0 个答案:

没有答案