Ubuntu 服务器上的 Scrapy Splash:得到一个意外的关键字参数 'encoding'
Scrapy Splash on Ubuntu server: got an unexpected keyword argument 'encoding'
我使用的 Scrapy Splash 在我的本地机器上工作得很好,但是当我在我的 Ubuntu 服务器上使用它时 returns 这个错误。这是为什么?是不是内存不足造成的?
File "/usr/local/lib64/python2.7/site-packages/twisted/internet/defer.py", line 1299, in _inlineCallbacks
result = g.send(result)
File "/usr/local/lib/python2.7/site-packages/scrapy/core/downloader/middleware.py", line 53, in process_response
spider=spider)
File "/usr/local/lib/python2.7/site-packages/scrapy_splash/middleware.py", line 387, in process_response
response = self._change_response_class(request, response)
File "/usr/local/lib/python2.7/site-packages/scrapy_splash/middleware.py", line 402, in _change_response_class
response = response.replace(cls=respcls, request=request)
File "/usr/local/lib/python2.7/site-packages/scrapy/http/response/text.py", line 50, in replace
return Response.replace(self, *args, **kwargs)
File "/usr/local/lib/python2.7/site-packages/scrapy/http/response/__init__.py", line 79, in replace
return cls(*args, **kwargs)
File "/usr/local/lib/python2.7/site-packages/scrapy_splash/response.py", line 33, in __init__
super(_SplashResponseMixin, self).__init__(url, *args, **kwargs)
TypeError: __init__() got an unexpected keyword argument 'encoding'
更新
只有在使用 localhost 作为 SPLASH_URL
时才会发生
我使用确切的 URL 来解决它:
SPLASH_URL = 'http://therealip:8050'
任何本地主机解决方案都不起作用。我认为这是 Scrapy Splash 中的一个错误。
更新
事实证明,如果我关闭 Crawlera,错误也消失了。但随后它又重现了另一个错误。最好不要在配置中使用localhost。
TypeError: init() got an unexpected keyword argument 'encoding'
您似乎在某处向 class init(可能创建实例)传递了一个额外的参数 'encoding'。
尝试对此进行调查。
我使用的 Scrapy Splash 在我的本地机器上工作得很好,但是当我在我的 Ubuntu 服务器上使用它时 returns 这个错误。这是为什么?是不是内存不足造成的?
File "/usr/local/lib64/python2.7/site-packages/twisted/internet/defer.py", line 1299, in _inlineCallbacks
result = g.send(result)
File "/usr/local/lib/python2.7/site-packages/scrapy/core/downloader/middleware.py", line 53, in process_response
spider=spider)
File "/usr/local/lib/python2.7/site-packages/scrapy_splash/middleware.py", line 387, in process_response
response = self._change_response_class(request, response)
File "/usr/local/lib/python2.7/site-packages/scrapy_splash/middleware.py", line 402, in _change_response_class
response = response.replace(cls=respcls, request=request)
File "/usr/local/lib/python2.7/site-packages/scrapy/http/response/text.py", line 50, in replace
return Response.replace(self, *args, **kwargs)
File "/usr/local/lib/python2.7/site-packages/scrapy/http/response/__init__.py", line 79, in replace
return cls(*args, **kwargs)
File "/usr/local/lib/python2.7/site-packages/scrapy_splash/response.py", line 33, in __init__
super(_SplashResponseMixin, self).__init__(url, *args, **kwargs)
TypeError: __init__() got an unexpected keyword argument 'encoding'
更新
只有在使用 localhost 作为 SPLASH_URL
我使用确切的 URL 来解决它:
SPLASH_URL = 'http://therealip:8050'
任何本地主机解决方案都不起作用。我认为这是 Scrapy Splash 中的一个错误。
更新
事实证明,如果我关闭 Crawlera,错误也消失了。但随后它又重现了另一个错误。最好不要在配置中使用localhost。
TypeError: init() got an unexpected keyword argument 'encoding'
您似乎在某处向 class init(可能创建实例)传递了一个额外的参数 'encoding'。 尝试对此进行调查。