scrapy保存图片、音频

##爬取图片要用到的类
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"
匿名

发表评论

匿名网友