如何在Scrapy1.5中设置每个项目的图片存储文件夹

2024-04-19 11:20:54 发布

您现在位置:Python中文网/ 问答频道 /正文

Scrapy1.5允许设置IMAGES_STORE设置来存储所有下载的媒体,如documentation中所述

我希望能够根据Item中的一些值为每个Item指定一个自定义文件夹。由于不太了解Scrapy的内部结构,我不确定要覆盖哪些方法来实现这一点。你知道吗

我想重写from_settings(cls, settings),但在那里我还没有访问Item的权限。你知道吗

有什么想法吗?你知道吗


Tags: 方法storefrom文件夹权限settingsdocumentationitem
1条回答
网友
1楼 · 发布于 2024-04-19 11:20:54

我通过重写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)

相关问题 更多 >