600字范文,内容丰富有趣,生活中的好帮手!
600字范文 > php采集汽车之家demo Python 爬虫实例(15) 爬取 汽车之家(汽车授权经销商)...

php采集汽车之家demo Python 爬虫实例(15) 爬取 汽车之家(汽车授权经销商)...

时间:2021-04-30 10:42:32

相关推荐

php采集汽车之家demo Python 爬虫实例(15)  爬取   汽车之家(汽车授权经销商)...

有人给我吹牛逼,说汽车之家反爬很厉害,我不服气,所以就爬取了一下这个网址。

本片博客的目的是重点的分析定向爬虫的过程,希望读者能学会爬虫的分析流程。

一:爬虫的目标:

打开汽车之家的链接:/beijing/,出现如下页面

我们的目标是

点击找车,然后出现如下图

我们要把图中的信息抓取到

二:实现过程

我们选择 宝马5系 然后点击找车

注意宝马5系的data-value 是 65

如下图

因为这个网页需要做翻页,我们就点击翻页。然后抓取到了一个url链接的请求方式。

可以判断出来的是PageIndex 是页面,表示第几页。SeriesId是车系

直接上代码

#-*-coding:utf-8-*-

from common.contest import *

defspider():

url= '/frame/Car/CarDealerList'headers={"Host":"","Connection":"keep-alive","Accept":"*/*","X-Requested-With":"XMLHttpRequest","User-Agent":"Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/64.0.3282.186 Safari/537.36","Referer":"/frame/car/GetDealerByCar?SeriesId=65&ProvinceId=110000&CityId=110100","Accept-Encoding":"gzip, deflate, br","Accept-Language":"zh-CN,zh;q=0.9","Cookie":"__ah_uuid=B5EFCA0A-C638-43C8-8D4F-1CEB07A1E9BD; fvlid=15275822890176s3cfWZKlL; sessionip=119.61.28.90; area=110199;

ahpau=1; sessionid=FCACBCDA-A005-4F82-8E88-C27091B3A127%7C%7C-05-29+16%3A24%3A54.092%7C%;

sessionvid=6B39A12E-5580-4522-9800-316DA038715A; sessionuid=FCACBCDA-A005-4F82-8E88-C27091B3A127%7C%7C-05-29+16%3A24%3A54.092%7C%;

papopclub=0AFEB345FB77A406EFE118CB317CE733; pepopclub=7C16F37F6D8E038ABDFD155664996DA2;

historybbsName4=c-3170%7C%E5%A5%A5%E8%BF%AAA3; pvidlist=7ab2cb54-f4a0-420c-be56-dff130b41d846:149875:216460:0:1:1036776;

mpvareaid=278; mallsfvi=15275826304503kGG3Qam%%7C278; mallslvi=278%%7C15275826304503kGG3Qam;

Hm_lvt_9924a05a5a75caf05dbbfb51af638b07=1527582690; ahsids=65_2951_3170_4851_59; ahpvno=21;

pvidchain=101061,101061,101061,278,3311273,3311273,3311273,3311273,3311273,3311273;

ref=%7C0%7C0%7C0%7C-05-29+17%3A09%3A59.013%7C-05-29+16%3A24%3A54.092; Hm_lpvt_9924a05a5a75caf05dbbfb51af638b07=1527585001",

}for page in range(1,11):

data={"BrandId":"0","FactoryId":"0","SeriesId":"65","ProvinceId":"110000","CityId":"110100","CountyId":"0","PageIndex":str(page),"DealerKind":"1",

}try:

result= session.get(url=url,headers=headers,verify=False,params=data).textexcept:

result= session.get(url=url,headers=headers,verify=False,params=data).textprintresult

spider()

在这里不做解析。

三:总结

有人要问了SeriesId = 65怎么处理,这个很简单,把汽车之家所有的车系都封装成一个字典格式数据就可以啦,CityId,ProvinceId 也是同理。

爬虫的难点不是网站的一些反爬措施,而是一个请求有几十个url链接,能准确的找到自己需要的链接,有用的链接才是最重要的。

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。