https://blog.csdn.net/qq_43537354/article/details/88360636
https://doc.scrapy.org/en/1.3/topics/media-pipeline.html
FilesPipeline的工作流如下:
1. 在spider中爬取要下载的文件链接,将其放置于item中的file_urls(注意这只是一个代名词就像数学中的x,他的值在配置项里面,可以自定义的)。
2. spider将其返回并传送至pipeline链。
3. 当FilesPipeline处理时,它会检测是否有file_urls字段,如果有的话,会将url传送给scarpy调度器和下载器。
4. 下载完成之后,会将结果写入item的另一字段files,files包含了文件现在的本地路径(相对于配置FILE_STORE的路径)、文件校验和checksum、文件的url
两个管道都实现了这些功能:
1.避免重新下载最近下载的媒体
2.指定存储介质的位置(文件系统目录)
3.图像管道具有一些用于处理图像的额外功能:
3.1 转换图片格式(jpg)和存储模式(RGB)
Convert all downloaded images to a common format (JPG) and mode (RGB)
;生成图像缩略图。
3.2 检查图像宽度/高度以确保它们符合最小约束;(需要在settings中配置)