python - 指示 Scrapy 忽略站点的内容长度

标签 python http curl scrapy

问题

如何在 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 模块中全局。

查看此选项的官方 Scrapy 文档 here或有关内置设置的进一步说明 here .

关于python - 指示 Scrapy 忽略站点的内容长度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36514261/

相关文章:

C++调用python脚本来处理电子邮件

python - 在 Mavericks 上安装 libtiff

ruby-on-rails - 使用 Rails 通过 HTTP 发送 XML

ruby-on-rails - 使用 curl 对 Rails 应用程序的 RESTful 请求忽略 AuthenticityToken

php - 在后台 PHP 下载外部文件?

java - curl 或 HTTPRequest

python - 合并具有相同范围但不同空间分辨率的 xarray 数据集

http - 单个连接上的多个 HTTP 查询

curl - 有人可以解释用于curl选项CURLOPT_WRITEFUNCTION的写函数的参数吗

python - 从单页模板生成多个 OpenOffice 页面