找回密码
 立即注册

扫一扫,访问微社区

QQ登录

只需一步,快速开始

查看: 3058|回复: 2

[求助] 为什么用scrapy爬下来的GIF图打开之后是静态图片?

4

主题

9

帖子

9

积分

贫民

积分
9
DavidLee 发表于 2017-3-8 21:03:10 | 显示全部楼层 |阅读模式
本帖最后由 DavidLee 于 2017-3-9 10:45 编辑

这是pipeline.py的代码,爬下来的图片是.gif后缀的图片,但是用浏览器打开,显示的还是静态图片,请问应该怎么改代码才行?如果有需要,可以把代码都贴上来

class HupuGifPipeline(ImagesPipeline):
    #file_path函数可以将图片以原来的格式和原图片名称进行保存
def file_path(self, request, response=None, info=None):
        image_guid = request.url.split('/')[-1
        return 'full/%s' % (image_guid)

    def get_media_requests(self, item, info):
        for image_url in item['hupu_image_url']:
            image_urls = 'http:' + image_url
            yield Request(image_urls)

    def item_completed(self, results, item, info):
        image_paths = [x['path'] for ok, x in results if
        if not image_paths:
            raise DropItem('图片未下载好 %s' % image_paths)


PS:发现了个问题,爬下来的图片虽然是.gif后缀的图片,但是大小比原文件要小很多,就是说爬下来的其实还是一张静态图片。。。
QQ图片20170309104503.png
回复

使用道具 举报

4

主题

9

帖子

9

积分

贫民

积分
9
DavidLee  楼主| 发表于 2017-3-9 17:54:23 | 显示全部楼层
找到问题了,ImagesPipeline不支持GIF下载,要重新写保存图片方法,已经解决了,如果有需要代码的话我可以贴出来
回复 支持 反对

使用道具 举报

0

主题

1

帖子

1

积分

贫民

积分
1
flamepeak 发表于 2017-9-14 15:25:23 | 显示全部楼层
我也遇到这个问题,请问,您是重构的imagePipeline, 还是怎么做的?

代码能贴出来吗?
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

快速回复 返回顶部 返回列表