【发布时间】:2018-06-12 00:17:13
【问题描述】:
谁能回答我,我如何在 page.evaluate 方法中使用setInterval?
我需要获取一些动态数据,并每隔500ms将其写入文件
http://tinyimg.io/i/QjusF8x.png
(async () => {
const browser = await puppeteer.launch();
const page = await browser.newPage();
await page.goto('https://url.com');
// Auth
await page.click(selector.login.tab);
await page.click(selector.login.email);
await page.keyboard.type(settings.username);
await page.click(selector.login.password);
await page.keyboard.type(settings.password);
await page.click(selector.login.button);
// Waiting for loading
await page.waitFor(10000); // TO FIX: there we should wait for loaded element or selector
await page.evaluate(() => {
setInterval(() => {
console.log(document.querySelector('div._captions > p._value').innerText + document.querySelector('div._captions p._hl-value').innerText);
}, 500);
});
//await page.screenshot({path: 'screenshot.jpg'});
await browser.close();})();
【问题讨论】:
标签: node.js async-await puppeteer