听说你想入手一辆代步车?那还不用Python来做一下攻略?爬取某站全站数据!

前言
今天同事问我有没有代步车好推荐的 , 我说你可以选择自己喜欢的 , 别刷太多的视频 , 没啥用 , 到时候更加难以选择!其实买车嘛 , 不管合资还是国产 , 主要还是得自己喜欢 , 买来自己开 , 买个别人喜欢的有啥用 。而且现状就是很多短视频都是被车企充值类似于打广告的 。买车就是试驾喜欢的车 , 觉得满意就行 , 没有那么多好纠结的东西的!
废话不多说 , 今天的爬虫案例也是这位同事给我的一点思路 , 正巧没有啥好更新的了 , 如果大家有想看的网站爬虫或者啥的可以留言给我~我抽时间给大家去攻破它!今天就带大家抓取一波汽车之家的所有车辆数据!
思路?
爬虫是什么?
爬虫就是模拟客户端(浏览器 , 手机端 , exe , 平板 。。。)发送网络请求的一个工具(可以批量获取网络当中的资源 , 文本 , 数据 , 图片 , 视频等等一一系列的数据信息)
如何实现

听说你想入手一辆代步车?那还不用Python来做一下攻略?爬取某站全站数据!

文章插图
?只需四步即可完成这样的一个爬虫脚本

1. 发送请求 (访问网站)2. 获取数据 网页源代码3. 解析数据 (网页构造, css样式选择器)4. 保存数据

?目标网站
完整代码?
听说你想入手一辆代步车?那还不用Python来做一下攻略?爬取某站全站数据!

文章插图
"""import requests# 发送请求 第三方模块(基于urllib开发模块) 额外安装 pip install 模块名import parsel# 解析数据模块 第三方模块 额外安装 pip install 模块名import csv# 内置模块 不需要你额外安装# 伪装 请求头 request headersheaders = {# 用户基本信息, 没有登陆信息'Cookie': 'fvlid=1644577630437PyNsv7r4UeWZ; che_sessionid=6033453E-99CD-4D18-9EC6-26D8D81CB82E%7C%7C2022-02-11+19%3A07%3A13.352%7C%7C0; sessionid=1510cb04-9fdd-428f-82f7-d7b77ccae016; area=430103; sessionip=175.0.63.33; sessionvisit=98f1634e-6cbb-4f5e-97f9-6af88e5b8d33; sessionvisitInfo=1510cb04-9fdd-428f-82f7-d7b77ccae016|www.autohome.com.cn|100533; Hm_lvt_d381ec2f88158113b9b76f14c497ed48=1650521306; che_sessionvid=6223C48B-0DCD-4485-8DB7-B9A2D39AC7FF; carDownPrice=1; listuserarea=0; UsedCarBrowseHistory=0%3A43390985%2C0%3A43390239%2C0%3A43268434%2C0%3A43010424; userarea=0; ahpvno=23; Hm_lpvt_d381ec2f88158113b9b76f14c497ed48=1650523580; ahuuid=46A0D5A6-5C39-4735-A5CE-3F6DA42672C9; showNum=52; v_no=36; visit_info_ad=6033453E-99CD-4D18-9EC6-26D8D81CB82E||6223C48B-0DCD-4485-8DB7-B9A2D39AC7FF||-1||-1||36; che_ref=www.autohome.com.cn%7C0%7C100533%7C0%7C2022-04-21+14%3A46%3A20.424%7C2022-02-11+19%3A55%3A59.495; sessionuid=1510cb04-9fdd-428f-82f7-d7b77ccae016',# 浏览器基本信息'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/100.0.4896.127 Safari/537.36'}# z = 1, y = 2url = 'https://www.che168.com/china/list/'# 1. 发送请求 (访问网站)# # 打印# print(url)# 发送请求 方式response = requests.get(url=url, headers=headers)# 2. 获取数据 网页源代码html_data = http://www.kingceram.com/post/response.text# 3. 解析数据 (网页构造, css样式选择器)# 数据分析# 网站开发>>> 都有# 人工智能# html(存储数据) + css(样式) + js(可以实现动态的效果)# #车辆信息# # #车主信息...# # selector = parsel.Selector(html_data)# python 数据容器 列表 [1,3,4,5,6]# 我要用别名去取值lis = selector.css('.viewlist_ul li')for li in lis:card_name = li.css('.card-name::text').get()cards_unit = li.css('.cards-unit::text').get()price = li.css('.pirce em::text').get()img_url = 'https:'+li.css('.img-box img::attr(src)').get()if price == None or price == "":price = li.css('.pirce::text').get()print(card_name, cards_unit, price, img_url)# 4. 保存数据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])?