Python 汽车之家 全系车型参数(包含历史停售车型)爬虫

本文仅供学习交流使用,如侵立删!

汽车之家2021 全系车型参数(包含历史停售车型)


2021.10.21更新

  • 增加参数:电动扰流板、无框设计车门、隐藏电动门把手、自动驾驶芯片、芯片总算力…
    在这里插入图片描述

2021.8.12更新

  • 最新官网数据(共57380款车型数据)
    在这里插入图片描述
    在这里插入图片描述

2021.7.8更新

  • 最新官网数据(新增或修改共1098款车型数据)
    在这里插入图片描述

打包成了采集器,需要的自行下载。
在这里插入图片描述


2021.5.17更新

  • 更新最新官网数据:新增821款车型参数及图片
    在这里插入图片描述

2021.4.14更新

  • 最新官网数据
  • 更改解析,保存更多参数
  • 增加:logo、车型图片
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

2021.3.7更新最新数据
在这里插入图片描述


2021.1.29更新

全系车辆十年保值率数据

在这里插入图片描述


2021.1.17更新

汽车之家全系车型图片:576149张原图(50.5G)

在这里插入图片描述


2021.1.8更新

增加:品牌LOGO
在这里插入图片描述


2021.1.6更新

更新:最新2021官网数据
在这里插入图片描述
在这里插入图片描述


2020.11.17更新

更新最新官网数据
在这里插入图片描述


2020.9.20更新

增加图片数据:
汽车之家车型图片下载
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述


2020.9.19更新

更新数据
在这里插入图片描述


2020.8.13更新

更新数据结构
在这里插入图片描述在这里插入图片描述


2020.6.9 更新

更新官网最新数据库
在这里插入图片描述



2020.6.8 更新

口碑数据查询脚本
在这里插入图片描述


2020.5.30更新

新增口碑数据
在这里插入图片描述


2020.5.23更新

很多人需要SQL脚本,抽时间写了一个
在这里插入图片描述在这里插入图片描述


2020.5.9更新

增加:选装包、外观颜色、内饰颜色参数
修复:多行数据存储不完整问题

在这里插入图片描述


2020.4.15更新

更新最新官网数据


2020.3.22更新

新增:途虎养车 车型、保养 数据
https://blog.csdn.net/qq_38154948/article/details/104700905


2020.1.9更新

增加:品牌首字母,品牌ID,品牌名称,车系ID,车系名称,车型ID,车型名称 字段数据
在这里插入图片描述
在这里插入图片描述


2019.12.25更新

很多网友留言说需要车标logo,果断满足需求

1. 车标logo页面
只需要车标logo和品牌参数,从移动端页面直接获取比较方便
https://car.m.autohome.com.cn/

2.解析车标图片url和品牌名称

response = requests.get("https://car.m.autohome.com.cn/")
response.encoding = 'UTF-8'
html = etree.HTML(response.text)
items = html.xpath('//*[@class="item"]')
for item in items:
    logo_url = item.xpath('./img/@data-src')
    if not logo_url:
        continue
    text = item.xpath('./span')[0].text    
    downLoadImage(text, logo_url[0])

3.根据url下载图片

def downLoadImage(fileName, downLoadUrl):
    r = requests.get(downLoadUrl)
    fileName = fileName + ".jpg"
    print("正在下载 " + fileName)
    with open("img/" + fileName, 'wb') as f:
        f.write(r.content)

4.运行结果
在这里插入图片描述


2019.12.17更新

闲来无事研究了一下*车之家页面class 字体混淆
在这里插入图片描述
思路:

  1. 获取车型参数页面源码
  2. 解析车型混淆字体js数据
  3. 解析车型参数json数据
  4. 匹配样式文件与json数据
  5. 将混淆后的字体替换为正常字体

效果:在这里插入图片描述在这里插入图片描述
在这里插入图片描述
途中碰到问题:

  • 历史车型的获取
  • 全部参数的解析
  • 数据错位问题

2019.10.12更新

有人反馈数据不全刚抽出时间看了一下,原来之前只取了在售车型没有获取停售的车型数据,本次更新后数据为国内在售(停售)全系车型数据包含历史数据
在这里插入图片描述


2019.9.29更新

闲来无事把脚本更新了一下用selenium,获取了全系全车型详细参数,主要这次包含了停售车型数据,所有历史车型数据
在这里插入图片描述


所有车型数据

在这里插入图片描述
分析发现所有车型数据在一个js文件中:
ps:当然也可通过解析网页 xpath提取,或通过接口,获取方式有很多种,此文主要需要seriesId 车型ID 这一项数据 为获取车型价格做准备 顾用此方法。
车型数据js

 def get_model(self):
        """获取所有车型数据"""
        # 所有车型js文件
        url = '~~删除线格式~~ '
        response = self._parse_url(url)
        # GBK解码
        content = response.content.decode('GBK')
        # 剔除开头和结尾处多余字符 转换为json
        content = content.replace('var listCompare$100= ', '').replace(';', '')
        content = json.loads(content)
        for i in content:
            # 品牌首字母,名称,车系列表
            brand_l, brand_n, brand_list,  = i['L'], i['N'], i['List']
            for q in brand_list:
                # 车系名称,车型列表
                car_l, car_list = q['N'], q['List']
                for t in car_list:
                    # 车型ID, 车型名称
                    model_l = t['I']
                    model_n = t['N']
                    yield brand_l, brand_n, car_l, model_n, model_l

车型数据

获取价格

车型价格接口
价格接口需要两个参数:dealerId 经销商ID 和 seriesId 车型ID

经销商接口
经销商接口需要两个参数:seriesId 车型ID 和 cityId 区域代码

    def get_price(self, dealerId, seriesId):
        """获取价格"""
        url = ‘~~删除线格式~~ ’
        # 根据经销商ID 和 车型ID 获取车型价格
        response = self._parse_url(url)
        # 无数据跳过
        if not response.json()['result']['list']:
            print('暂无经销商信息')
            return
        # 获取经销商信息 主要取经销商ID 用来获取价格
        contents = response.json()['result']['list']
        for con in contents:
            # 汽车型号
            SpecName = con['SpecName']
            # 指导价
            OriginalPrice = con['OriginalPrice']
            # 参考价
            Price = con['Price']
            print('{}数据请求中'.format(SpecName))
            yield SpecName, OriginalPrice, Price

在这里插入图片描述


数据DEMO

链接:https://pan.baidu.com/s/1aQMR_2ix_ANK7DkujxaAwg
提取码:cmwi


本文仅供学习交流使用,如侵立删!

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值