Python:scrapy中使用ImagesPipeline下载图片问题

 坐着驴车追宝马 发布于 2022-11-04 15:42

运行环境

操作系统:windows7 64位
python:2.7.6 64位
scrapy:scrapy-0.22.2

问题描述

使用ImagesPipeline 下载图片的时候,已经在setting.py中指定了图片的保存地址:
IMAGES_STORE = 'image-downloaded/'
但是 运行的时候,在“image-downloaded”目录下却没看到图片。

源码在这里下载

在pipline文件中增加了image_key函数,代码如下:

def image_key(self, url):
        year,month = url.split('/')[-3],url.split('/')[-2]
        image_guid = hashlib.sha1(url).hexdigest()
        img_path = "%s/%s/%s" % (year,month,self.title)
        return '%s/%s.jpg' % (img_path, image_guid)
2 个回答
  • Pipeline 里需要 image_key 返回文件名

    2022-11-12 01:49 回答
  • 刚刚仔细检查了下cmd输出:发现有个错误:

    IOError: decoder jpeg not available
    

    这个应该是pillow(pil的替代品)的问题,于是卸载了pillow(命令:pip uninstall pillow),然后重新安装了(命令:pip install pillow),发现无法下载,于是在Python第三方windows模块安装包下载对应版本的pillow进行安装,重新启动爬虫,发现图片可以正常下载了。

    2022-11-12 01:49 回答
撰写答案
今天,你开发时遇到什么问题呢?
立即提问
热门标签
PHP1.CN | 中国最专业的PHP中文社区 | PNG素材下载 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有