pyppeteer无头模式截图未渲染完成?
http://m.chinajd995.com:8080/ 以上类似站点去pyppeteer访问会出现页面未加载完成就截图了,导致截图空白
page = await self.browser.newPage() await page.evaluateOnNewDocument('() =>{ Object.defineProperties(navigator,'
'{ webdriver:{ get: () => false } }) }') # 本页刷新后值不变
try:
await page.setUserAgent(UserAgent().random)
await page.goto(url)
await page.screenshot({'path': path})
time.sleep(0.5) # 防止报错
await page.close()
except:
pass
预想效果
实际效果
经过测试await asyncio.sleep(10) # 增加等待时间,等待页面加载完成
可行有效,但是由于多个网站都需要这样操作该如何减少他的等待时间呢,而不是写死时间
回答:
不需要 sleep ,await page.goto(url)
优化下:
await page.goto(url, { // timeout: 2 * 1000,
waitUntil: ['load', 'domcontentloaded', 'networkidle0']
})
具体文档可见:https://pyppeteer.github.io/pyppeteer/reference.html#pyppetee...
以上是 pyppeteer无头模式截图未渲染完成? 的全部内容, 来源链接: utcz.com/p/939062.html