Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/323.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python Scrapy如何避免重新下载最近下载的媒体?_Python_Scrapy - Fatal编程技术网

Python Scrapy如何避免重新下载最近下载的媒体?

Python Scrapy如何避免重新下载最近下载的媒体?,python,scrapy,Python,Scrapy,据报道,Scrapy的文件管道和图像管道“避免重新下载最近下载的媒体” 我有一个爬行器,我正在使用(JOBDIR)运行它,以便暂停和恢复爬行。最初我只是在不下载文件的情况下抓取物品;后来,我添加了一个文件管道。但是,在使用管道重新运行spider“for real”之前,我忘了删除JOBDIR 我担心的是,JOBDIR中的requests.seen文件将包含已刮取的项目的指纹,但其中没有刮取的文件(因为刮取时管道尚未就位)。我正在考虑的是删除JOBDIR,然后重新开始清理 我的问题是:在没有再次

据报道,Scrapy的文件管道和图像管道“避免重新下载最近下载的媒体”

我有一个爬行器,我正在使用(
JOBDIR
)运行它,以便暂停和恢复爬行。最初我只是在不下载文件的情况下抓取物品;后来,我添加了一个文件管道。但是,在使用管道重新运行spider“for real”之前,我忘了删除
JOBDIR

我担心的是,
JOBDIR
中的
requests.seen
文件将包含已刮取的项目的指纹,但其中没有刮取的文件(因为刮取时管道尚未就位)。我正在考虑的是删除
JOBDIR
,然后重新开始清理


我的问题是:在没有再次下载所有文件的情况下,这会起作用吗?或者
FilesPipeline
是否依赖
JOBDIR
跳过最近已下载的文件?(顺便说一句,我的
FILES\u SOURCE
是一个S3 bucket)。

正如我所知,scrapy计算文件名(通常是图像url中的base64),如果文件存在于文件夹中,scrapy不会尝试下载它。

也许你可以尝试在
scrapy.Request中设置
don\u filter=True