设为首页收藏本站

Crossin的编程教室

 找回密码
 立即加入
查看: 10818|回复: 2
打印 上一主题 下一主题

用scrapy爬下来的GIF图为什么打开的是静态图片

[复制链接]

4

主题

0

好友

44

积分

新手上路

Rank: 1

跳转到指定楼层
楼主
发表于 2017-3-8 20:59:54 |只看该作者 |倒序浏览
本帖最后由 电子菜鸟008 于 2017-3-9 10:46 编辑

这是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 ok]
        if not image_paths:
            raise DropItem('图片未下载好 %s' % image_paths)

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

使用道具 举报

174

主题

45

好友

11万

积分

管理员

Rank: 9Rank: 9Rank: 9

沙发
发表于 2017-3-9 15:23:17 |只看该作者
imagespipeline 不支持gif,自定义保存方法或者换 filespipline试试。
还有人给了个重写的方法:https://segmentfault.com/q/1010000000416319 未验证
#==== Crossin的编程教室 ====#
微信ID:crossincode
网站:http://crossincode.com
回复

使用道具 举报

4

主题

0

好友

44

积分

新手上路

Rank: 1

板凳
发表于 2017-3-9 17:37:13 |只看该作者
crossin先生 发表于 2017-3-9 15:23
imagespipeline 不支持gif,自定义保存方法或者换 filespipline试试。
还有人给了个重写的方法:https://se ...

对,确实要重新写保存方法,我已经改了,现在已经OK了,谢谢crossin大大
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即加入

QQ|手机版|Archiver|Crossin的编程教室 ( 苏ICP备15063769号  

GMT+8, 2024-11-22 16:38 , Processed in 0.023805 second(s), 24 queries .

Powered by Discuz! X2.5

© 2001-2012 Comsenz Inc.

回顶部