不知名小白
Email : [email protected]
Time of completion:2024.3.30
前言
中国二手车市场是一个万亿级的市场。自21世纪汽车大量进入中国家庭以来,汽车在不断地更新换代,加之汽车在使用一段时间后出现机件性能下降、养护成本提高等,促使用户更新在用车辆。
一、运行环境
1、jdk
①将java文件夹拷贝到C:\ProgramFiles目录下
②配置环境变量
在系统变量中创建CLASSPATH,设置路径.;C:\ProgramFiles\Java\jdk1.8.0_131\lib
在Path中设置C:\ProgramFiles\Java\jdk1.8.0_131\bin路径
2、maven
①将maven文件夹拷贝到C:\ProgramFiles目录下
②配置环境变量
在Path中设置C:\ProgramFiles\apache-maven-3.6.3\bin
③在命令提示符输入mvn-v可以显示maven的版本号
3、idea安装
①根据向导进行安装(注意路径的选择,不要包含空格、中文字符)
②破解文件的配置
4、scala
①在idea中选择file->settings->选择plugins搜索scala进行在线安装
5、VMware虚拟机安装和hadoop
安装步骤:
(1)安装vm17
(2)安装ubuntu16 root
(3)登录ubuntu16,创建hadoop用户
$sudo passwd root
#useradd -m hadoop -s /bin/bash
#passwd hadoop
#adduser hadoop sudo
#su hadoop
hadoop@ubuntu01:~$
(4)安装jdk
查看是否安装成功
$java -version
(5)下载 Hadoop
ubuntu下打开firefox浏览器,输入 www.baidu.com ->https://hadoop.apache.org/
下载hadoop
正常在 Download
#mv hadoop-2.10.2.tar.gz /home/hadoop
(6)安装hadoop
hadoop@ubuntu01:$ tar -xvf hadoop-2.10.2.tar.gz
用tar解压后,在路径下看到hadoop的文件夹
/home/hadoop/hadoop-2.10.2/
(7)配置hadoop环境变量
$sudo vim /etc/profile
使配置profile生效,
$source /etc/profile
(8)查看hadoop命令
$hadoop version
二、设计思路
-
数据采集:
-
数据处理:
-
数据分析:
-
可视化展示:
三、内容
1.数据采集
代码如下(示例):
import csv
import requests
import parsel
f = open('datacar.csv',mode='a',encoding='utf-8',newline='')
csv_writer = csv.DictWriter(f, fieldnames=[
'标题',
'年份',
'里程',
'城市',
'价格',
'标签儿',
'保修又没',
'详情页',
])
csv_writer.writeheader()
for page in range(1,51):
print(f'=======ciajidi{page}yedeshujuneiron======')
headers = {
'Cookie':'......',
'User-Agent':'......'
}
url=f'https://..........com/all/?page={page}&'
response = requests.get(url=url,headers=headers)
html_data = response.text
print(response)
selector = parsel.Selector(html_data)
lis = selector.css('.Content_left .gongge_ul li')
for li in lis:
title = li.css('.title::attr(title)').get()
car_info = li.css('.gongge_main p i::text').getall()
year = car_info[0]
mileage =car_info[1]
city = car_info[2].strip()
label = li.css('.car_tag em::text').get().strip()
tag = li.css('.tc_label::text').get()
price = li.css('.Total::text').get()
href = li.css('.title::attr(href)').get()
dit={
'标题': title,
'年份': year,
'里程': mileage,
'城市': city,
'价格': price,
'标签儿': label,
'保修又没': tag,
'详情页': href,
}
csv_writer.writerow(dit)
print(title,year,mileage,city,price,label,tag,href)
2.功能设计和实现
- 车辆销售趋势分析 输入:year 输出:year、count 可视化展示:柱状图
数据处理和分析:在输入的年份范围内,统计每年的销售量,并将结果保存为 year 和 count 的列表。具体实现可以使用sql语句进行数据读取和处理,然后转换为json获取数据。
关键代码:
Html可视化关键代码:
可视化展示:
- 结果解释和分析:根据柱状图分析车辆销售量的变化趋势,找出销售波动的原因,如政策调整、经济形势等。
- 总结:汽车销售量在2021年左右到达最高,随后开始下降,推测是由于疫情的原因导致汽车销售量下降
- 价格与行驶距离分析 输入:mileage price 输出:mileage price 可视化展示:折线图
数据处理和分析:读入车辆的里程数和价格数据,将其按里程数从小到大排序并绘制成折线图展示。具体实现可以使用sql语句进行数据读取和处理,然后转换为json获取数据。
关键代码
html可视化关键代码
可视化展示:
- 结果解释和分析:根据折线图分析价格和行驶距离的关系,找出价格变化的规律和原因,如车辆年份、品牌等。
- 总结:行驶距离在8-10万公里平均价格最低,0-2万公里平均价格最高,随行驶距离的减少价格增高
- 不同城市的车型偏好分析 输入:city title count 输出:city、title、count 可视化展示:3d柱状图。具体实现可以使用sql语句进行数据读取和处理,然后转换为json获取数据。
- 数据处理和分析:根据输入的数据,统计不同城市的车型销售量,并将结果保存为 city、title 和 count 的列表。
关键代码:
Html可视化关键代码:
可视化展示:
- 结果解释和分析:根据 3D 柱状图分析不同城市的购车偏好,找出城市间偏好的差异和原因,如地理位置、交通情况等。
- 总结:大众在各个城市最为密集,相比较其他品牌销售量更高,适合大多数人购买
4.数据采集:通过pycharm用pyhton语言进行数据爬取的方法获取数据
- 数据爬取网站:https://zhengzhou.taoche.com/
关键代码:
输出展示:
5:搜索引擎本地数据:通过爬取的数据将其转换为json加载在html,通过关键字搜索获取所需数据
关键代码
Html关键代码
Html展示:
总结
IDEAL、HTML、Spark和Echarts是我们在完成二手车项目时用到的重要工具和技术。它们极大地提高了我们数据分析的效率和准确性,并且最终实现了我们对二手车市场的深入了解。
标签:数据分析,title,二手车,hadoop,li,可视化,安装,css From: https://blog.csdn.net/weixin_75027717/article/details/137185817
如果感觉对您有用,请点个关注支持一下吧,相关源码私信