Python 懂车帝综合口碑数据

本文涉及的产品
对象存储 OSS,20GB 3个月
对象存储 OSS,内容安全 1000次 1年
对象存储 OSS,恶意文件检测 1000次 1年
简介: Python 懂车帝综合口碑数据

## Python 懂车帝综合口碑数据


### 需求


懂车帝全系车型综合口碑 优点 缺点 统计数据

![在这里插入图片描述](https://ucc.alicdn.com/images/user-upload-01/eda7f733349e4e5c92365ef8953b60a0.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA5ouJ54Gv55qE5bCP5omL,size_20,color_FFFFFF,t_70,g_se,x_16)



### 操作环境

- win10

- Google nexus5x(root)

- Python3.9

- Charles

### 需求分析


先来web端试下能否找到需要的数据接口,随便找个车型打开口碑页面F12查看Network

![在这里插入图片描述](https://ucc.alicdn.com/images/user-upload-01/8167b0924fee4130940c2cbc8ec0cbf2.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA5ouJ54Gv55qE5bCP5omL,size_20,color_FFFFFF,t_70,g_se,x_16)

根据页面关键词搜索没有找到明显的数据接口,虽然说现在也可以使用request或者selenium直接在页面解析数据,但是毕竟这不是首选方案,还是从APP分析一下在决定用什么方案。

PS:手机环境、抓包环境的配置在这不在赘述,有兴趣的可参考之前的文章 [APP抓包环境配置](https://cenjy.blog.csdn.net/article/details/123635939)


下载懂车帝APP,并安装至手机

![请添加图片描述](https://ucc.alicdn.com/images/user-upload-01/43d931bba35b499aa179123e79c453f8.png)

手机开启Postern,pc打开charles


至此抓包工作准备完成,打开懂车帝APP,随便找个车型进入懂车分页面

![在这里插入图片描述](https://ucc.alicdn.com/images/user-upload-01/6707b47da4b94884863ad17880a11d14.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA5ouJ54Gv55qE5bCP5omL,size_13,color_FFFFFF,t_70,g_se,x_16)

还是老套路先根据页面关键词搜索一波

![在这里插入图片描述](https://ucc.alicdn.com/images/user-upload-01/8a727c1b753e4ed497983376d7fd2f57.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA5ouJ54Gv55qE5bCP5omL,size_15,color_FFFFFF,t_70,g_se,x_16)

明显看出来后两条数据不是需要的,前四条是同一个接口返回的,应该就是需要的数据,双击点进去看一下详细数据


![在这里插入图片描述](https://ucc.alicdn.com/images/user-upload-01/4cf47a9eb2364c1591f2c798301684b3.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA5ouJ54Gv55qE5bCP5omL,size_20,color_FFFFFF,t_70,g_se,x_16)

初步查看和页面数据是一致的,看数据结构和具体的数值和页面中的数据很像,Charles界面太小,将数据拷贝至网页中解析,方便分析,分享一个常用的[json数据在线解析网站](https://www.bejson.com/jsonviewernew/?tdsourcetag=s_pcqq_aiomsg)

![在这里插入图片描述](https://ucc.alicdn.com/images/user-upload-01/52f971ac7162456ba50ef21a45d3f5af.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA5ouJ54Gv55qE5bCP5omL,size_20,color_FFFFFF,t_70,g_se,x_16)

经过仔细对比页面中的数据,发现此接口就是我们需要的

综合口碑接口:

```

https://*******/get_detail/?series_id=4182&car_id=0&only_owner=0&year_id=all&iid=2467735824764398&device_id=40011211486215&ac=wifi&channel=dcd-yd-11zh-and-74&aid=36&app_name=automobile&version_code=693&version_name=6.9.3&device_platform=android&os=android&ab_client=a1%2Cc2%2Ce1%2Cf2%2Cg2%2Cf7&ab_group=3167590%2C3577236%2C3333988&ssmix=a&device_type=Nexus+5X&device_brand=google&language=zh&os_api=27&os_version=8.1.0&manifest_version_code=693&resolution=1080*1794&dpi=420&update_version_code=6931&_rticket=1648907286543&cdid=f3163204-7faf-45d7-89c4-e82215c3216c&city_name=%E8%81%8A%E5%9F%8E&gps_city_name=%E8%81%8A%E5%9F%8E&selected_city_name&rom_version=27&longi_lati_type=1&longi_lati_time=1648907102913&content_sort_mode=0&total_memory=1.77&cpu_name=Qualcomm+Technologies%2C+Inc+MSM8992&overall_score=4.873&cpu_score=4.8872&host_abi=

```

对!你没看错,就是这么长,验证一下数据接口,在网页中直接请求一下这个url

![请添加图片描述](https://ucc.alicdn.com/images/user-upload-01/73fa607f3184429493fec52ba008da60.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA5ouJ54Gv55qE5bCP5omL,size_20,color_FFFFFF,t_70,g_se,x_16)

这儿推荐安装一个网页json可视化的插件,这儿偷懒没装,在线解析了一下json数据,和Charles抓到的数据是一样,经过分析得知: series_id是车系id,修改此参数即可

### 获取全部车系id


获取车系id就很简单了,先拿到品牌id然后根据品牌id请求车系信息,注意这是一个post接口


```

def get_series(self, brand_id):

   """

   获取品牌所有车系

   brand_id:品牌id

   """

   headers = {'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/85.0.4183.121 Safari/537.36'}

   param = {

   'offset': 0,

   'limit': 1000,

   'is_refresh': 1,

   'city_name': '北京',

   'brand': brand_id

   }

   response = requests.post(url=url, data=param, headers=headers)

   rep_json = json.loads(response.text)

   # print(response.text)

   if rep_json['status'] == 'success':

   return rep_json['data']['series']

   else:

   raise Exception("get car series has exception!")

```

![请添加图片描述](https://ucc.alicdn.com/images/user-upload-01/9a6e78ead17c4e78ab18024dd4caf841.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA5ouJ54Gv55qE5bCP5omL,size_20,color_FFFFFF,t_70,g_se,x_16)

### 获取车系综合口碑评分

```

   def get_score(self, series_id):

       """

       获取车系综合评分

       series_id: 车系id

       """

       response = self._parse_url(url).json()

       tag_list = response.get('data').get('tab_info').get('tag_list')

       data = list()

       # 优点

       merits = [i.get('tag_name')+"("+str(i.get('count'))+")" for i in tag_list if i.get('sentiment') == 1]

       data.append(merits)

       # 缺点

       defects = [i.get('tag_name')+"("+str(i.get('count'))+")" for i in tag_list if i.get('sentiment') == -1]

       data.append(defects)

       return data

```


### 运行效果

![在这里插入图片描述](https://ucc.alicdn.com/images/user-upload-01/d31d3fafab3f4ee294629bd3a3e238c2.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA5ouJ54Gv55qE5bCP5omL,size_20,color_FFFFFF,t_70,g_se,x_16)

![在这里插入图片描述](https://ucc.alicdn.com/images/user-upload-01/38f621b6317d48c1a465d6617accf7c2.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA5ouJ54Gv55qE5bCP5omL,size_20,color_FFFFFF,t_70,g_se,x_16)

### 资源下载


[https://download.csdn.net/download/qq_38154948/85073968](https://download.csdn.net/download/qq_38154948/85073968)


------


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


------

相关实践学习
借助OSS搭建在线教育视频课程分享网站
本教程介绍如何基于云服务器ECS和对象存储OSS,搭建一个在线教育视频课程分享网站。
相关文章
|
1月前
|
数据采集 数据可视化 数据挖掘
利用Python自动化处理Excel数据:从基础到进阶####
本文旨在为读者提供一个全面的指南,通过Python编程语言实现Excel数据的自动化处理。无论你是初学者还是有经验的开发者,本文都将帮助你掌握Pandas和openpyxl这两个强大的库,从而提升数据处理的效率和准确性。我们将从环境设置开始,逐步深入到数据读取、清洗、分析和可视化等各个环节,最终实现一个实际的自动化项目案例。 ####
161 10
|
5天前
|
数据采集 Web App开发 数据可视化
Python用代理IP获取抖音电商达人主播数据
在当今数字化时代,电商直播成为重要的销售模式,抖音电商汇聚了众多达人主播。了解这些主播的数据对于品牌和商家至关重要。然而,直接从平台获取数据并非易事。本文介绍如何使用Python和代理IP高效抓取抖音电商达人主播的关键数据,包括主播昵称、ID、直播间链接、观看人数、点赞数和商品列表等。通过环境准备、代码实战及数据处理与可视化,最终实现定时任务自动化抓取,为企业决策提供有力支持。
|
3月前
|
机器学习/深度学习 TensorFlow 算法框架/工具
使用Python实现深度学习模型:智能数据隐私保护
使用Python实现深度学习模型:智能数据隐私保护 【10月更文挑战第3天】
260 0
|
25天前
|
数据采集 Web App开发 监控
Python爬虫:爱奇艺榜单数据的实时监控
Python爬虫:爱奇艺榜单数据的实时监控
|
20天前
|
数据采集 存储 XML
python实战——使用代理IP批量获取手机类电商数据
本文介绍了如何使用代理IP批量获取华为荣耀Magic7 Pro手机在电商网站的商品数据,包括名称、价格、销量和用户评价等。通过Python实现自动化采集,并存储到本地文件中。使用青果网络的代理IP服务,可以提高数据采集的安全性和效率,确保数据的多样性和准确性。文中详细描述了准备工作、API鉴权、代理授权及获取接口的过程,并提供了代码示例,帮助读者快速上手。手机数据来源为京东(item.jd.com),代理IP资源来自青果网络(qg.net)。
|
1月前
|
数据采集 分布式计算 大数据
构建高效的数据管道:使用Python进行ETL任务
在数据驱动的世界中,高效地处理和移动数据是至关重要的。本文将引导你通过一个实际的Python ETL(提取、转换、加载)项目,从概念到实现。我们将探索如何设计一个灵活且可扩展的数据管道,确保数据的准确性和完整性。无论你是数据工程师、分析师还是任何对数据处理感兴趣的人,这篇文章都将成为你工具箱中的宝贵资源。
|
2月前
|
传感器 物联网 开发者
使用Python读取串行设备的温度数据
本文介绍了如何使用Python通过串行接口(如UART、RS-232或RS-485)读取温度传感器的数据。详细步骤包括硬件连接、安装`pyserial`库、配置串行端口、发送请求及解析响应等。适合嵌入式系统和物联网应用开发者参考。
75 3
|
3月前
|
数据采集 JSON 数据处理
抓取和分析JSON数据:使用Python构建数据处理管道
在大数据时代,电商网站如亚马逊、京东等成为数据采集的重要来源。本文介绍如何使用Python结合代理IP、多线程等技术,高效、隐秘地抓取并处理电商网站的JSON数据。通过爬虫代理服务,模拟真实用户行为,提升抓取效率和稳定性。示例代码展示了如何抓取亚马逊商品信息并进行解析。
抓取和分析JSON数据:使用Python构建数据处理管道
|
3月前
|
数据处理 Python
Python实用记录(十):获取excel数据并通过列表的形式保存为txt文档、xlsx文档、csv文档
这篇文章介绍了如何使用Python读取Excel文件中的数据,处理后将其保存为txt、xlsx和csv格式的文件。
228 3
Python实用记录(十):获取excel数据并通过列表的形式保存为txt文档、xlsx文档、csv文档
|
3月前
|
计算机视觉 Python
Python实用记录(九):将不同的图绘制在一起、将不同txt文档中的数据绘制多条折线图
这篇文章介绍了如何使用Python的OpenCV库将多张图片合并为一张图片显示,以及如何使用matplotlib库从不同txt文档中读取数据并绘制多条折线图。
64 3
Python实用记录(九):将不同的图绘制在一起、将不同txt文档中的数据绘制多条折线图