写的爬虫,爬取一段时间后,服务器就不响应了,有什么解决办法?

2015-12-27 16:38:16 +08:00
 cyneuzk

RT ,一个下载文件的爬虫,一段时间后,服务器完全不响应。
可以确定的是服务器端根据不同 UA ,需要 POST 的数据不同,
我已经区分开 IE 、 chrome 、 firefox 三者各自需要的数据了,还是会有这种情况。
是因为 IP 限制了吗?

7678 次点击
所在节点    Python
16 条回复
abelyao
2015-12-27 16:40:33 +08:00
有 IP 限制很正常啊… 没 IP 限制得被人爬到崩…
marcushbs
2015-12-27 16:41:46 +08:00
一般请求间要加一个按 x2 自增的 interval ,发现没反应了就等等,爬的那些服务如果靠谱点一般都有 ip 访问次数限制
excelle08
2015-12-27 16:45:18 +08:00
没设置 timeout ?
cyneuzk
2015-12-27 16:51:27 +08:00
@excelle08 设置了呀
cyneuzk
2015-12-27 16:51:48 +08:00
@abelyao 这种情况有方法解决吗
abelyao
2015-12-27 16:52:47 +08:00
@cyneuzk 买代理 IP ,爬几次之后就换一个 IP 咯
wgjak47
2015-12-27 17:00:40 +08:00
只有换 ip 喽。
FanPengcheng
2015-12-27 18:15:36 +08:00
在 header 里伪造来源 IP 。
wxg4net
2015-12-27 18:19:18 +08:00
伪造请求 IP(标准), 参数包含:
VIA:xxx.xxx.xxx.xxx
Client-Ip:xxx.xxx.xxx.xxx
X-Forwarded-For:xxx.xxx.xxx.xxx
cyneuzk
2015-12-27 21:33:31 +08:00
@wxg4net 学习一下
cyneuzk
2015-12-27 21:33:45 +08:00
@FanPengcheng 能详细点不
Linxing
2015-12-28 15:25:07 +08:00
加入代理服务器吧,不停的切换代理
meloncrashed
2015-12-28 18:32:14 +08:00
上面前辈都说了

多个 ip 切换, 每抓之间试试不同的时间间隔
meloncrashed
2015-12-28 18:33:37 +08:00
可以考虑时间间隔,是个随机数,不然动作太过规律,容易被看出来是非人类。
KentY
2015-12-28 19:24:09 +08:00
弄个代理池, 换着爬
hengsha
2018-04-14 16:07:06 +08:00
可能是服务器的问题,推荐使用郑州新数据代理的美国多 IP 服务器

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/246475

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX