【问题标题】:How to set IMAGES_STORE folder per Item in Scrapy 1.5如何在 Scrapy 1.5 中为每个项目设置 IMAGES_STORE 文件夹
【发布时间】:2018-09-18 19:31:27
【问题描述】:

Scrapy 1.5 允许设置 IMAGES_STORE 设置以存储所有下载的媒体,如 documentation 中所述

我希望能够根据Item 中的某些值为每个Item 指定一个自定义文件夹。对 Scrapy 的内部了解不多,我不确定要重写哪些方法来完成此操作。

我考虑过覆盖from_settings(cls, settings),但我还无法访问Item

有什么想法吗?

【问题讨论】:

    标签: python image path scrapy


    【解决方案1】:

    我通过覆盖file_path 方法解决了这个问题。所以在IMAGES_STORE 我有基本路径然后我控制file_path 的变量部分。像下面的东西。但是我首先有一个错字,scrapy 默默地忽略了它,即使在调试中也没有打印任何错误......我不知道为什么?所以最好从一个简单的字符串开始进行测试。

    def file_path(self, request, response=None, info=None):
        url = request.url
        image_guid = hashlib.sha1(to_bytes(url)).hexdigest()
        return '%s/full/%s.jpg' % ('my_custom_path', image_guid)
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-08-27
      • 2010-10-05
      • 2017-11-14
      • 1970-01-01
      • 1970-01-01
      • 2012-08-16
      • 2011-09-06
      • 1970-01-01
      相关资源
      最近更新 更多