|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
经网上查询得知,imagespipeline 不可以获取gif图片,需要重写方法,请问我重写了convert_image,但是爬取的gif图片还不是完整的(imagespipeline.convert_image 将图片缩小),我的代码如下:
class GifPipeline(ImagesPipeline):
def file_path(self, request, response = None, info = None):
url=request.url
file_name=url.split('/')[-1]
return file_name
def item_completed(self, results, item, info):
image_paths=[x['path'] for ok,x in results if ok]
if not image_paths:
raise DropItem()
return item
def get_media_requests(self, item, info):
yield Request(item['url'])
def convert_image(self, image, size = None):
buf = BytesIO()
image.save(buf,image.format)
return image, buf |
|