scrapy下载图片
【摘要】
items.py:
fishPicId = scrapy.Field() #图片url地址。要是个列表
image_path = scrapy.Field() #->>保存im...
fishPicId = scrapy.Field() #图片url地址。要是个列表
image_path = scrapy.Field() #->>保存img绝对路径。
- 1
- 2
item['fishPicId'] = [img_src] # ImagesPipeline用到的是图片的url列表
- 1
ITEM_PIPELINES = {
'LXSpider.pipelines.LxspiderPipeline': 300,
'LXSpider.pipelines.DownloadImagesPipeline': 100
}
import os
IMAGES_URLS_FIELD ="fishPicId" #fishPicId:在items.py中配置的爬取得图片地址
project_dir = os.path.abspath(os.path.dirname(__file__)) #获取当前爬虫项目的绝对路径
IMAGES_STORE = os.path.join(project_dir,'images') #组装新的图片路径,设置图片存储目录
# IMAGES_MIN_HEIGHT = 1 #设定下载图片的最小高度
# IMAGES_MIN_WIDTH = 1 #设定下载图片的最小宽度
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
'''保存图片绝对路径'''
from LXSpider.images.full import img_abspath
from scrapy.pipelines.images import ImagesPipeline
class DownloadImagesPipeline(ImagesPipeline):
def item_completed(self, results, item, info):
for ok, value in results: # 通过断点可以看到图片路径存在results内
image_file_path = img_abspath+str(value['path']).replace('/','\\') # 将路径保存在item中返回
item['image_path']=image_file_path
return item
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
文章来源: blog.csdn.net,作者:考古学家lx,版权归原作者所有,如需转载,请联系作者。
原文链接:blog.csdn.net/weixin_43582101/article/details/90723944
【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
评论(0)