主页>技术社区>IT 技术>编程开发>Python

python爬取全国二手车数据,看看有没有可以捡漏的!

eIT.com.cn 2023/3/18 16:16:31 阅读 3 次

打印


 

絮叨一下

话说,最近从湖北开始汽车价格战,全国人民都跑到湖北买车去了,搞得人家都出政策限制外地人购买了。

不过12W的C6是真香呐,二十多万的C6一身毛病,12W的C6毛病在我!

这波价格战直接蔓延到全国,全国的二手车商已原地哭晕。

今天我们就用Python来获取一下全国二手车数据,看看二手车有没有降价的。

环境、模块

python 3.8
pycharm 2022.3专业版
requests >>> pip install requests
parsel >>> pip install parsel

 

实现步骤

  1. 发送请求
  2. 获取数据
  3. 解析数据
  4. 保存数据

代码展示

  1. 发送请求
for page in range(1, 101):   url = f'https://www.***.com/china/a0_0msdgscncgpi1ltocsp{page}exx0/'   response = requests.get(url=url, headers=headers, proxies=get_proxies())

 

  1. 获取数据
html_data = response.text

 

  1. 解析数据
    select = parsel.Selector(html_data)   detail_url_list = select.xpath("//ul[@class='viewlist_ul']/li/a[@class='carinfo']/@href").getall()   # Python学习交流群:872937351   for detail_url in detail_url_list[:-1]:       if detail_url[1] == '/':           detail_url = 'https:' + detail_url       else:           detail_url = 'https://www.**.com' + detail_url       detail_html = requests.get(detail_url, headers=headers, proxies=get_proxies()).text       detail_select = parsel.Selector(detail_html)       title = detail_select.xpath("string(//h3[@class='car-brand-name'])").get("").strip()       licheng = detail_select.xpath("//ul[@class='brand-unit-item fn-clear']/li[1]/h4/text()").get("").strip()       shangpai = detail_select.xpath("//ul[@class='brand-unit-item fn-clear']/li[2]/h4/text()").get("").strip()       pailiang = detail_select.xpath("//ul[@class='brand-unit-item fn-clear']/li[3]/h4/text()").get("").strip()       suozaidi = detail_select.xpath("//ul[@class='brand-unit-item fn-clear']/li[4]/h4/text()").get("").strip()       guobiao = detail_select.xpath("//ul[@class='brand-unit-item fn-clear']/li[5]/h4/text()").get("").strip()       price = detail_select.xpath("string(//span[@id='overlayPrice'])").get("").strip()       print(title, licheng, shangpai, pailiang, suozaidi, guobiao, price, detail_url)

 

  1. 保存数据
with open('汽车之家.csv', mode='a', encoding='utf-8', newline='') as f:   csv_writer = csv.writer(f)   csv_writer.writerow([card_name, cards_unit, price, img_url])

 

尾语

好了兄弟们,今天的分享就到这里结束了,咱们下次再见!

大家赶紧去试试,看看二手车价格吧,说不定还能遇上心动的下个单!






相关内容


热门栏目


特别声明


最新资讯
热讯排行



合作媒体友情链接
生活常识小贴士 软件开发教程 智慧城市生活网 息县通生活服务[移动版] 息县商圈[移动版] 美食菜谱
健康养生 法律知识 科技频道 电影影讯 留学考研学习 星座生肖|解梦说梦




关于我们 | 联系我们 | 合作媒体 | 使用条款 | 隐私权声明 | 版权声明

      Copyright © 2023 eIT.com.cn. All Rights Reserved. 豫ICP备2022012332号