Python Scrapy ImagePipeline忽略特定主机上的图像

Python Scrapy ImagePipeline忽略特定主机上的图像,python,scrapy,scrapy-spider,Python,Scrapy,Scrapy Spider,我有一个问题,我的ImagePipeline正在下载一些图像,而完全忽略了其他图像。我通过使用loader.set_value()对图像路径进行硬编码来测试这一点 这里有两个相同图像的示例,请注意,我一次只写一行,而不是同时写两行 # Test A, Works fine. Scrapy DOES download. loader.add_value('image_urls', ['http://hemmon.com/house.jpg']) # Test B, Not working. Sc

我有一个问题,我的ImagePipeline正在下载一些图像,而完全忽略了其他图像。我通过使用
loader.set_value()
对图像路径进行硬编码来测试这一点

这里有两个相同图像的示例,请注意,我一次只写一行,而不是同时写两行

# Test A, Works fine. Scrapy DOES download.
loader.add_value('image_urls', ['http://hemmon.com/house.jpg'])

# Test B, Not working. Scrapy does NOT download.
loader.add_value('image_urls', ['https://media.fastighetsbyran.se/23566167.jpg?Bredd=300'])
测试A下载成功,测试B被完全忽略。没有调试消息,没有错误,什么都没有。我运行完全相同的settings.py,没有其他更改。图像文件是相同的,我从测试B路径从浏览器下载它,然后在测试A路径上传到我自己的网站上。不更改文件本身

请注意,我还尝试了同一主机上的其他文件。所有这些都被忽略了

以下是我的设置.py:

BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
IMAGES_STORE = os.path.join(BASE_DIR, 'images')
ITEM_PIPELINES = {
    'scrapy.pipelines.images.ImagesPipeline': 1,
}
我发现它似乎也有类似的问题,它与标题有关。这就解释了为什么我可以从一台主机上下载完全相同的图像,但不能从另一台主机上下载


编辑:我创建了一个复制此问题的文件。

您的问题实际上已打印到日志中

2017-09-25 22:53:17 [scrapy.downloadermiddlewares.robotstxt] DEBUG: Forbidden by robots.txt: <GET https://media.fastighetsbyran.se/22943836.jpg>
2017-09-25 22:53:17[scrapy.downloadermiddleware.robotstxt]调试:robots.txt禁止:

因此,修复非常简单,请在
设置中设置
ROBOTSTXT\u oby=False
。py

发布一个可用于测试issue@TarunLalwani我已经创建了一个公共回购协议,在这里演示了这一点:如果从https中删除“s”,同样的结果也会出现?哦,文件服务器有自己的robots.txt文件。奇怪,谢谢。