基于python的汽车信息爬取与分析

基于python的汽车信息爬取与分析

ID:43505014

大小:215.54 KB

页数:5页

时间:2019-10-09

基于python的汽车信息爬取与分析_第1页
基于python的汽车信息爬取与分析_第2页
基于python的汽车信息爬取与分析_第3页
基于python的汽车信息爬取与分析_第4页
基于python的汽车信息爬取与分析_第5页
资源描述:

《基于python的汽车信息爬取与分析》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、二、《基于Python的汽车数据爬取与分析》1课题内容和要求1.1问题的提出1)用Python语言自行编写爬虫框架或使用Scrapy框架,爬取汽车之家或易车网的车辆相关数据,按照品牌、车系、年款、价格等信息进行分类和显示。2)使用正则表达式从网页中提取有用的数据。3)可以实现多线程爬取,以提高爬取效率。4)在此基础上可以进一步获取用户反馈信息,评价不同车型的优劣。1.2选题背景与意义在现在这种互联网浪潮下,信息正在扮演越来越重要的角色。人们获取信息,分析信息,利用信息。而怎样快速便捷地获取信息成为人们非常关注的问题。同

2、时,随着中国工业化水平和经济水平的提高,汽车成为家庭必需品。人们对汽车信息的需求也在不断增大。在此背景下,我们选择了“基于python的汽车信息爬取与分析”这个课题,因为我们想要通过这次锻炼切实地解决一个现实问题。1.3开发工具简介a)运行环境如果要运行此软件,用户计算机必须有Python环境和Scrapy环境。b)开发环境本软件基于Python3.6和Scrapy1.4开发Scrapy各组件版本号如下:Scrapy:1.4.0lxml:4.0.0.0libxml2:2.9.5cssselect:1.0.1parsel

3、:1.2.0w3lib:1.18.0Twisted:17.5.0Python:3.6.1(v3.6.1:69c0db5,Mar212017,17:54:52)pyOpenSSL:17.3.0(OpenSSL1.1.0f25May2017)Platform:Windows-10-10.0.15063-SP0a)开发工具Pycharm、cmder2需求分析2.1可行性分析技术可行性:python在爬虫方面有资源和环境优势。易车网对爬虫脚本比较友好。操作可行性:Scrapy作为一个非常强大的爬虫框架,有着它易用,高效的一面。

4、同时由于Scrapy对于有python学习背景的人来说上手不算困难,故此项目可以用Scrapy来实现。2.2系统数据需求本系统最终将爬取到的数据以csv文件存储在本地项目根目录下,方便用户通过excel软件直接对数据进行查看和分析。2.3系统的性能需求此系统基于Scrapy框架,由于Scrapy默认支持多线程爬取,系统的性能基本可以达到要求。而稍后的测试结果也佐证了此结果。3概要设计3.1系统结构的总体设计3.2系统模块设计基于scrapy,我们的项目分为4个模块,分别是定义爬取数据模块、爬取模块、配置模块和数据处理模

5、块。我们在item.py中CarItem类中定义要爬取的数据,如品牌、车系、年款、价格等等。爬取模块会直接引用该类创建的对象对数据进行保存。我们在pipelines.py中设置对爬取下来的数据的处理方式,比如存储方式、过滤去重等操作。该文件从bitauto.py文件中获取爬取到的信息,并进行相关处理。我们在settings.py中对项目进行一些必要设置,如优先级、多线程、延迟等。同时在测试时,我们可以根据修改此文件的配置信息来控制变量测试相关因素对爬取效率的影响。bitauto.py是主要爬取方法实现的文件。分析网页,

6、获取信息,跳转页面等等核心操作全部由此文件来实现。4详细设计类图:核心算法流程图:核心操作全部在bitauto.py中实现,故此部分主要描述bitauto.py的设计。具体实现采用面向过程的编程方法,具体到代码则是4个方法,分别是parse(),parse_detail(),parse_soft()和parse_word()方法。Parse()方法用于从主页面获取品牌信息列表,并生成相关车系链接并调用parse_detail()方法对车系页面进行处理。分析源码发现当前热销的汽车品牌保存在一个无序列表

温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。