python - pyspider爬取时fetcher报超时错误:fetcher/: 504 Gateway Time-out
高洛峰
高洛峰 2017-04-18 09:45:14
0
2
1169

有时爬虫会报如下超时错误:

Traceback (most recent call last):
  File "/opt/pyspider/pyspider/run.py", line 351, in <lambda>
    app.config['fetch'] = lambda x: umsgpack.unpackb(fetcher_rpc.fetch(x).data)
  File "/usr/lib/python2.7/xmlrpclib.py", line 1233, in __call__
    return self.__send(self.__name, args)
  File "/usr/lib/python2.7/xmlrpclib.py", line 1587, in __request
    verbose=self.__verbose
  File "/usr/lib/python2.7/xmlrpclib.py", line 1273, in request
    return self.single_request(host, handler, request_body, verbose)
  File "/usr/lib/python2.7/xmlrpclib.py", line 1321, in single_request
    response.msg,
ProtocolError: <ProtocolError for fetcher/: 504 Gateway Time-out>

请问有什么好的方法避免?

高洛峰
高洛峰

拥有18年软件开发和IT教学经验。曾任多家上市公司技术总监、架构师、项目经理、高级软件工程师等职务。 网络人气名人讲师,...

全部回复(2)
巴扎黑

这个错误只会在调试时出现

左手右手慢动作

@足兆叉虫
这个确实是调试时的前台错位,而且在后台fetcher会报这样的错误:
[E 161014 23:45:09 tornado_fetcher:202] [599] douban:f25b579c7b441d19bc800412cccb145b https://movie.douban.com/revi... ValueError('No JSON object could be decoded',) 50.00s
我调试完成后,真正开始爬取时,过一段时间后会有大量的这个错误,而且在页面上显示爬虫status为“PAUSED”。请问是什么问题?如何解决?

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板