十、爬虫下载汽车图片--scrapy爬虫初学者学习过程-----精通Python爬虫框架scrapy

十、爬虫下载汽车图片

作者:Irain
QQ:2573396010
微信:18802080892
GitHub项目链接:爬虫下载汽车图片
视频资源链接:爬虫下载汽车图片
爬取目标网页链接:二手车之家汽车.

1 创建scrapy项目和爬虫

参考链接:在DOC窗口创建scrapy项目和爬虫.

2 settings.py设置

参考链接:scrapy爬虫项目设置settings.py参数.

3 核心内容:(代码在后面)

3.1 car_spider.py

在这里插入图片描述

3.2 pipelines.py

在这里插入图片描述

3.3 图片存储路径

在这里插入图片描述

4 成果展示

4.1 pycharm项目下的图片

在这里插入图片描述

4.2 文件夹下的图片

在这里插入图片描述

5 代码附件

5.1 car_spider.py
# -*- coding: utf-8 -*-
import scrapy
from piture_car.items import PitureCarItem
class CarSpiderSpider(scrapy.Spider):name = 'car_spider'allowed_domains = ['che168.com']start_urls = ['https://www.che168.com/dealer/371543/35174484.html?pvareaid=100519&userpid=440000&usercid=440100']def parse(self, response):url = response.xpath("//div[@class='car-pic-list js-box-text']/a/img/@data-original").getall() #  获取汽车图片urlurl = list(map(lambda url:response.urljoin(url),url))  #  每个url添加"https:"yield  PitureCarItem(url=url)  #  传递
5.2 pipelines.py
import os
import urllib.request
class PitureCarPipeline(object):def __init__(self):self.path = os.path.join(os.path.dirname(os.path.dirname(__file__)),'image') #  图片存储路径if not os.path.exists(self.path):  #  检查是否存在Image文件夹os.mkdir(self.path)def process_item(self, item, spider):urls = item['url'] # 提取图片urlfor url in urls:picture_name = url.split('_')[-1]   #  从url中获取图片名称urllib.request.urlretrieve(url=url,filename=os.path.join(self.path,picture_name))  #  下载图片 url和绝对路径print("图片存储路径")print(os.path.join(self.path,picture_name))return item
5.3 items.py
import scrapy
class PitureCarItem(scrapy.Item):url = scrapy.Field()

发布:2020年4月19日


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部