javascript - 最小化 puppeteer 时我的代码不运行
问题描述
我有以下代码,如果我将导航窗口最大化,它运行良好,但是当我最小化它时它停止工作。
更多细节:
当窗口最小化时,“scrollDown & scrollTop”函数停止执行。
'use strict'
const puppeteer = require('puppeteer-core');
const lauchpuppeteer = async () => {
const browser = await puppeteer.launch({
defaultViewport: null,
headless: false,
userDataDir: `${obj.id}`,
args: [`--app=${url}`,
'--disable-background-timer-throttling',
'--disable-backgrounding-occluded-windows',
'--disable-renderer-backgrounding',
'--no-sandbox']
});
const [page] = await browser.pages()
await page.waitForNavigation();
await scrollDown(page);
await page.waitFor(5000);
await scrollTop(page);
if (await page.$('li.inline.t-24.t-black.t-normal.break-words') !== null)
fullname = await page.$eval('li.inline.t-24.t-black.t-normal.break-words', el => el.innerText.replace(/\s+/g, ' ').trim());
else console.log('The Full Name was not found.'.red);
}
const scrollTop = async (page) => {
await page.evaluate(_ => {
window.scrollTo(0, 0);
});
}
const scrollDown = async (page) => {
await page.evaluate(async () => {
await new Promise((resolve, reject) => {
var totalHeight = 0;
var distance = 50;
var timer = setInterval(() => {
var scrollHeight = document.body.scrollHeight;
window.scrollBy(0, distance);
totalHeight += distance;
if (totalHeight >= scrollHeight) {
clearInterval(timer);
resolve();
}
}, 100);
});
});
}
解决方案
推荐阅读
- django - Shopify graphQL 查询
- python-2.7 - pygsheets set_dataframe 未被识别
- android - dlopen 失败有文本重定位
- png - 理解 IDAT,阅读 DEFLATE 的动态霍夫曼树
- sql-server - 需要一种编程方式来获取 SQL Server 内置函数的名称、参数和返回类型
- android - 如何在 FCM 中定位某个主题的用户细分?
- java - 在选项卡式活动中显示值
- r - 使用clusterR从大栅格中随机抽样
- html - CSS:让我的侧边栏不在我的其他内容之上
- python - 运行python脚本时如何保持专注于终端?