0
デフォルトでは、ScrapyはHTTP 1.0を使用しているようです。要求を送信するためにHTTP 1.1を使用するようにする設定はありますか?デフォルトでHTTP 1.0が使用されています
ありがとうございました。 http://dev.scrapy.org/wiki/ScrapyRecipesから
デフォルトでは、ScrapyはHTTP 1.0を使用しているようです。要求を送信するためにHTTP 1.1を使用するようにする設定はありますか?デフォルトでHTTP 1.0が使用されています
ありがとうございました。 http://dev.scrapy.org/wiki/ScrapyRecipesから
:あなたが設定(文書化されていない)以下で、Scrapy HTTPクライアント工場をオーバーライドすることによってこれを行うことができますHTTP 1.1に準拠し なるように要求を偽装する方法
:
DOWNLOADER_HTTPCLIENTFACTORY = 'myproject.downloader.HTTPClientFactory'
ここですmyproject.downloaderモジュールの可能な実装:
from scrapy.core.downloader.webclient import ScrapyHTTPClientFactory, ScrapyHTTPPageGetter
class PageGetter(ScrapyHTTPPageGetter):
def sendCommand(self, command, path):
self.transport.write('%s %s HTTP/1.1\r\n' % (command, path))
class HTTPClientFactory(ScrapyHTTPClientFactory):
protocol = PageGetter
これは機能します。ありがとう。 – user891260