问题
如何在 Scrapy 中忽略响应的内容长度?
解释
考虑这个 curl 命令"
curl -u <user:pass> http://data.icecat.biz/export/level4/NL/files.index.xml
目前它失败了,因为 Icecat 错误地设置了 content-length header 。
我们可以通过使用 curl 的 ignore-content-length 参数忽略内容长度来解决这个问题:
curl --ignore-content-length -u <user:pass> http://data.icecat.biz/export/level4/NL/files.index.xml
一切正常!
但是我不知道如何在 Scrapy 中执行此操作. Google 和文档没有向我透露任何信息。
在我深入研究 Scrapy 代码来解决这个问题之前,也许有人已经这样做了。
最佳答案
您可以在命令行中使用 download_maxsize=0
将 Scrapy 将下载的最大响应大小设置为“无限制”(使用 scrapy crawl myspider -s download_maxsize=0
).默认为 1024 字节。
您还可以在 Scrapy 项目的 myproject.settings
模块中的每个项目的 scrapy.spiders.Spider.custom_settings
属性中对每个蜘蛛执行此操作,或者在 scrapy.settings.default_settings
模块中全局。
关于python - 指示 Scrapy 忽略站点的内容长度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36514261/