有时爬虫会报如下超时错误:
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>
请问有什么好的方法避免?
このエラーはデバッグ中にのみ表示されます
@zuzhaochao
これは確かにデバッグ中のフロントエンドのミスアライメントであり、バックグラウンドのフェッチャーが次のようなエラーを報告します:
[E 161014 23:45:09 tornado_fetcher:202] [599] douban : f25b579c7b441d19bc800412cccb145b https://movie.douban.com/revi... ValueError('JSON オブジェクトをデコードできませんでした',) 50.00s
デバッグ完了後、実際にクロールを開始すると大量のしばらくすると、このエラーが発生し、ページ上でクローラーのステータスが「一時停止」として表示されます。何が問題ですか?どうやって解決すればいいでしょうか?