puppeteer抓取网站时报Navigation Timeout Exceeded: 30000ms exceeded问题

栏目: Node.js · 发布时间: 5年前

内容简介:今天看了下数据库中的内容,发现数据对应不上,特查了下爬虫日志,发现了Navigation Timeout Exceeded: 30000ms exceeded这个问题,原本跑着好好的程序又出现问题了。公司内所有出外网的口都是统一的,而且本地和服务器上都可以正常并快速的访问外网,另外服务器的防火墙是关了的。但是服务器上仍是有这个问题,我尝试用增加延迟,120s,240s,都是timeout。后来尝试其他网址,使用百度这种简单页面,发现居然也得好几十秒才能爬取到。当然这也证明了puppteer是可以正常工作的,

今天看了下数据库中的内容,发现数据对应不上,特查了下爬虫日志,发现了Navigation Timeout Exceeded: 30000ms exceeded这个问题,原本跑着好好的程序又出现问题了。

问题

  1. 自己pc上爬去没有问题。
  2. 服务器上爬取有问题,但是chrome是可以访问被爬网站的(服务器是window server 2008)。
  3. npm包也重装过。

公司内所有出外网的口都是统一的,而且本地和服务器上都可以正常并快速的访问外网,另外服务器的防火墙是关了的。但是服务器上仍是有这个问题,我尝试用增加延迟,120s,240s,都是timeout。

处理方法

后来尝试其他网址,使用百度这种简单页面,发现居然也得好几十秒才能爬取到。当然这也证明了puppteer是可以正常工作的,但是出于某种原因爬去特别慢。

故修改延时到无限大:

await page.goto(url, {
    timeout: 0
});

打印爬取前后时间,发现居然需要将近497秒。。。所以异常还是出现在爬取上,但是线上程序不舍定超时,这是不太现实的,毕竟有那么多内容需要爬。

所以,到底应该不是puppeteer的问题,故缩短每次执行的时间,网络问题总不会一直存在的,其他方法还没想到。


以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

精通HTML

精通HTML

Paul Haine / 杨明军 / 人民邮电出版社 / 2008-2 / 35.00元

本书深入地探讨了(X)HTML及相关技术包括CSS、微格式、语义网等,重点阐述了如何在恰当的时候使用恰当的标签,全书始终贯彻现代的Web设计理念,从而使读者可以学习如何充分利用各种标记提供的多样性,创建语义丰富和结构合理的网站。 本书适合具备初步HTML和CSS知识的Web设计开发人员阅读。一起来看看 《精通HTML》 这本书的介绍吧!

HTML 压缩/解压工具
HTML 压缩/解压工具

在线压缩/解压 HTML 代码

JS 压缩/解压工具
JS 压缩/解压工具

在线压缩/解压 JS 代码

图片转BASE64编码
图片转BASE64编码

在线图片转Base64编码工具