pipelings文件:
from scrapy.pipelines.images import ImagesPipeline import scrapy import os class ZituPipeline(ImagesPipeline): # 下载图片 def get_media_requests(self, item, info): url = item['zitu'] yield scrapy.Request(url=url) # 设置图片存放的子路径,一般是图片文件名 def file_path(self, request, response=None, info=None, *, item=None): filename = request.url.split('/')[-1] dirname = '/'.join(filename.split('/')[:-1]) return os.path.join(dirname, filename) #传递给下一个管道 def item_completed(self, results, item, info): return item
settings文件:
ITEM_PIPELINES = { "yanhuangspider.pipelines.ZituPipeline": 301, }
#配置图片存放路径 IMAGES_STORE="./img"