python爬虫学习(上)——目标网站分析

来源:互联网 发布:巨人网络手游地位 编辑:程序博客网 时间:2024/06/05 15:32

平日没事喜欢了解一下与汽车相关的知识与讯息,经常逛汽车之家,一直觉得汽车之家的车型检索太过“简单”,只能满足一般大部分用户的检索需求,比如6缸车、非承载车身、非双离合、前后独立悬挂、带机械锁的.....等等这些搜索条件都是不支持的,于是就想写个爬虫把站上的数据都爬回来,数据有了,我自己想怎么处理,想怎么搜就都可以了大笑


说干就干,使用比较流行的python编写,之前没接触过,借这个机会正好学习一下,多掌握一门语言


边做边学,看了几篇介绍python爬虫的入门博客及一些python基础语法后,便开始了我的爬虫之旅


爬虫目的:爬下汽车之家网站内所有车型的基本信息,并保存到数据库中,便于日后进行数据搜索


首先,利用chrome对汽车之家网站请求、返回进行分析:

要达到我的目标页面,需要经历以下几个请求

(1)http://www.autohome.com.cn/car/ 直奔车型库页面

可以看到, 车系都已经按照了首字母进行了归类,随便点击一下N,H,B这些索引字母,可以看到http://www.autohome.com.cn/grade/carhtml/N.html、http://www.autohome.com.cn/grade/carhtml/H.html这类请求,得出规律,每个首字母下的车系列表信息可以通过http://www.autohome.com.cn/grade/carhtml/首字母.html获得



(2)http://www.autohome.com.cn/grade/carhtml/N.html 首字母下的车系列表信息页




可以看到,每个车系的具体详情页面的url都被包在了h4标签中,归纳出正则:     <h4.*><a href="(.*)">.*</a></h4>


(3).进入到每个车系的具体介绍页面

随便进入几个车系的详情页 http://www.autohome.com.cn/521/#levelsource=000000000_0&pvareaid=101594、http://www.autohome.com.cn/802/#levelsource=000000000_0&pvareaid=101594......

大概浏览一下 发现我需要的信息都 在参数配置页面 http://car.autohome.com.cn/config/series/521.html、http://car.autohome.com.cn/config/series/802.html.....

可以发现参数配置的规律:http://car.autohome.com.cn/config/series/车系编号.html

于是问题就转化为了,我只要能获得所有车系的车系编号,就能拼接出每个车系的最终目标页面(参数配置页面)地址了。


发现,车系编号都可以从之前的车系的具体详情页面的ur中进行提取


(4)进入参数配置页面(http://car.autohome.com.cn/config/series/521.html)

利用chrome,发现具体的参数信息都是以json格式进行封装返回的,这下解析起来就很方便了



需要的数据都在var config里


至此,已经可以理出了一个数据获取的完整路径了,下篇进入具体的爬虫编写




0 0
原创粉丝点击