##爬取图片要用到的类
from scrapy.pipelines.images import ImagesPipeline
class bilibili_dancePipeline(ImagesPipeline):
##重写get_media_request方法,请求图片链接
def get_media_requests(self, item, info):
yield scrapy.Request(item['pic'],meta={'bvid':item['bvid']})
# 重写file_path方法,修改文件名字,不然他会用哈希值保存
def file_path(self, request, response=None, info=None, *, item=None):
return request.meta['bvid']+".jpg"
##查看图片的url和保存的名字和路径
def item_completed(self, results, item, info):
print(results[0][1]['path'])
需要开启管道
以及设置IMAGES_STORE = “”
##这个是settings.py文件
ITEM_PIPELINES = {
'scrapy_01.pipelines.bilibili_dancePipeline':400,
}
IMAGES_STORE = "F:\\XXX"