游乐游手机版
首页/业界动态/文章详情

六步搞定 Python 爬虫!手把手爬取二手车数据

时间:2026-04-14 19:45
先划重点:这篇你能学到啥? 看着别人一个个成功抓取数据,是不是有点心痒?别急,今天就来带你手把手走通Python爬虫的全流程。我们直接实战,目标就是拿下某汽车网站的二手车信息。零基础友好,跟着走完,你不仅能把“车型、信息、价格”这些关键数据一网打尽,还能让它们规规矩矩地躺进Excel或CSV表格里,

先划重点:这篇你能学到啥?

看着别人一个个成功抓取数据,是不是有点心痒?别急,今天就来带你手把手走通Python爬虫的全流程。我们直接实战,目标就是拿下某汽车网站的二手车信息。零基础友好,跟着走完,你不仅能把“车型、信息、价格”这些关键数据一网打尽,还能让它们规规矩矩地躺进Excel或CSV表格里,随用随取。

步骤 1:导入必备爬虫库

工欲善其事,必先利其器。动手之前,咱们得先把几个核心“工具”准备好。下面这三个库,堪称爬虫界的经典组合,一个都少不了:

import requests  # 用来请求网页
from lxml import etree  # 解析网页结构
import pandas as pd  # 存数据用

步骤 2:准备网址 + 反爬 “伪装”

爬取数据,首先得告诉程序目标在哪里。这里我们以某汽车网站的温州二手车页面为例。但直接敲门可不行,现在的网站都有“门卫”(反爬机制),咱们得稍微伪装一下,加个“User-Agent”请求头,假装自己是普通的浏览器访问,这样才能顺利进门。

url = 'https://www.che168.com/wenzhou'  # 温州二手车页面
header = {
    'user-agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/135.0.0.0 Safari/537.36'
}

步骤 3:获取网页源代码

地址和“伪装”都搞定了,下一步就是动手抓取。用requests.get这个方法,配合我们准备好的网址和请求头,就能把网页最原始的HTML代码“拿”下来。打印出来看看,你会发现,网页上呈现的那些图文数据,其实都藏在这些结构化的代码里。

resp = requests.get(url, headers=header)
print(resp.text)  # 输出网页源代码

步骤 4:解析网页结构

拿到源代码只是第一步,关键是怎么从中精准地“抠”出我们需要的信息。这时候,lxml库和XPath语法就该上场了。你可以把XPath理解为地图坐标,它能帮我们在复杂的网页结构中,快速定位到具体数据所在的位置。

html = etree.HTML(resp.text)  # 把代码转成可解析的格式
# 定位到存放二手车信息的区域
divs = html.xpath('//*[@id="goodStartSolrQuotePriceCore0"]/ul/li')
# 准备3个空列表存数据
car_type1 = []   # 车型
car_message1 = [] # 车辆信息
car_price1 = []  # 价格

步骤 5:提取数据到列表

定位到数据所在的“集装箱”后,接下来就是开箱取货。通过一个循环,我们遍历每一个“集装箱”,把里面的“车型”、“信息”、“价格”这三样宝贝分别提取出来,放到对应的列表里。最后,用pandas这个强大的数据处理工具,将三个列表整理成一个清晰规整的表格。

for div in divs:
    # 提取车型
    car_type = div.xpath('./a/div[3]/h2/text()')
    if car_type:
        car_type1.append(car_type[0])
    # 提取车辆信息
    car_message = div.xpath('./a/div[3]/p/text()')
    if car_message:
        car_message1.append(car_message[0])
    # 提取价格(把多个文本拼接成字符串)
    car_price = ''.join(div.xpath('./a/div[3]/div/span//text()'))
    if car_price:
        car_price1.append(car_price)
# 转成DataFrame表格
dic = {'车型': car_type1, '信息': car_message1, '车价': car_price1}
data = pd.DataFrame(dic)

步骤 6:数据存成 Excel/CSV

所有数据都已整理到位,最后一步就简单得令人愉悦了。Pandas提供了极其便捷的方法,只需一行代码,就能将整个表格存为你想要的格式。无论是用Excel直接分析,还是导入其他系统,都畅通无阻。

data.to_excel('温州二手车信息.xlsx')  # 存为Excel
data.to_csv('温州二手车信息.csv')    # 存为CSV

注意事项

需要特别提醒两点:第一,代码里的XPath路径是针对示例网页结构写的,如果你要爬取其他网站或不同版块,需要根据实际情况重新定位,这一点是关键。第二,网络爬虫要遵守基本规范,动手前最好看一下目标网站的robots.txt协议,并且务必避免短时间内的频繁请求,做个“友好”的爬虫者。

以上就是一个完整的Python爬虫数据抓取流程。可以说,这个框架本身就是一个通用模板。掌握之后,你完全可以举一反三,调整网址和解析规则,去抓取你感兴趣的任意公开网页数据。

来源:https://www.51cto.com/article/834693.html
上一篇苹果官宣 4 月 30 日公布 2026 财年第 2 财季财报 下一篇Pandas 入门三:数据清洗必学!缺失值/重复值处理,一步到位不踩坑
本站内容用于信息整理与展示,如有侵权或内容问题请及时联系处理。

相关推荐

补充同频道和同主题内容,方便继续浏览更多相关内容。

同类最新

继续查看同栏目最近更新的文章。

更多
长安汽车明年一季度发布首款车载人形机器人小安
业界动态 · 2026-06-29

长安汽车明年一季度发布首款车载人形机器人小安

长安汽车公布机器人战略,采用“1+N+X”布局,联合头部伙伴攻克大脑、能源、驱动技术。人形机器人“小安”身高169cm,体重69kg,移动速度0 8m s,具备40个自由度,续航超2小时。预计明年一季度发布首款车载组件机器人,已在广州车展展示。

中国信科刷新光通信世界纪录 每秒可下载1.4万部4K电影
业界动态 · 2026-06-29

中国信科刷新光通信世界纪录 每秒可下载1.4万部4K电影

3月25日,光通信领域迎来又一个里程碑:中国信科集团光通信技术和网络全国重点实验室联合鹏城实验室、烽火藤仓光纤科技有限公司,成功实现了2 5Pb s 24芯光纤超大容量实时光传输,再次刷新了世界纪录。 这一研究成果不仅入选国际顶级光通信会议OFC(2026)并荣获“高分论文”称号,还受国际权威SCI

美国调查18万辆特斯拉Model3车门应急释放装置易找性
业界动态 · 2026-06-29

美国调查18万辆特斯拉Model3车门应急释放装置易找性

美国国家公路交通安全管理局对约17 9万辆2024款特斯拉Model3启动缺陷调查,焦点在于车门应急释放装置是否不易找到且标识不清。该调查源于一份缺陷请愿,不意味着立即召回,但可能引发后续监管措施。

doc个人图书馆停服 创始人称无偿转让失败
业界动态 · 2026-06-29

doc个人图书馆停服 创始人称无偿转让失败

运营长达20年,累计服务8000万用户的360doc个人图书馆,最终还是迎来了谢幕时刻。2026年5月1日,这个承载着无数用户收藏记忆的知名平台将正式停止服务——关停原因并非用户流失,而是始终未能寻得一位能够安全接管的合适人选。 创始人蔡智在告别信中坦言,近两个月来,他一直在尝试将360doc无偿转

年Q1随身WiFi实测安全靠谱高性价比机型推荐
业界动态 · 2026-06-29

年Q1随身WiFi实测安全靠谱高性价比机型推荐

2025年10月,艾瑞咨询正式授予飞猫“AI WiFi品类开创者”认证,紧接着CIC也将其认定为“多网融合自由切换技术服务首创者”。这些权威认证背后,折射出一个清晰的市场趋势:移动办公、户外出行、宿舍上网等场景的需求正在快速增长,随身WiFi几乎已成为不少用户的刚需装备。但问题也随之而来——网络卡顿