使用pyppeteer爬虫时,使用函数
page = await browser.newPage()
await page.goto(url)
时,发现页面已经跳转到了链接所在位置,但是还是报错:
pyppeteer.errors.TimeoutError: Navigation Timeout Exceeded: 30000 ms exceeded.
原因在于,执行速度太快,没有反应过来,再跳转之前增加延时可以解决
from asyncio import sleep
import random
def sleep_time():
return 1+random.random() * 2
page2 = await browser.newPage()
await sleep(sleep_time())
await page2.goto(detaillink)
本文介绍了在使用Pyppeteer爬虫时遇到的NavigationTimeoutExceeded错误,分析了该问题的原因是执行速度过快导致页面未完全加载。为解决这个问题,提出了通过引入随机延迟函数sleep_time()来确保页面充分加载的方法,从而避免TimeoutError。这种方法对于优化爬虫性能和提高爬取成功率具有实际意义。
3125

被折叠的 条评论
为什么被折叠?



