Skip to content

TengJiao33/Cars_Scraper

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 

Repository files navigation

汽车口碑舆情爬虫集合

这是一个专注于收集主流汽车垂直网站用户口碑数据的Python爬虫项目,旨在为汽车市场舆情分析、消费者行为研究等领域提供数据支持。

项目目前集成了对 汽车之家懂车帝易车网 三大平台的用户口碑(评论)数据的定向爬取。

✨ 主要功能

  • 平台覆盖广泛: 支持国内三大主流汽车资讯与交易平台。
  • 核心数据提取: 精准抓取用户口碑的关键字段,包括用户昵称、ID、发布日期、评论正文、点赞数和评论数等。
  • 反爬策略应对: 针对不同网站的特点采用相应的策略:
    • 汽车之家 & 懂车帝: 通过分析其JSON API接口,以Requests库进行高效、稳定的数据请求。
    • 易车网: 采用Selenium+Requests的混合模式,并成功攻克了其特有的字体反爬技术,通过动态解析woff字体文件,完美还原被编码的文本内容。
  • 配置简单,易于上手: 用户只需在每个脚本的末尾修改目标车型的ID和名称等少量参数,即可启动爬取任务。
  • 结构化数据输出: 所有爬取结果均会自动保存为.csv格式文件,方便后续进行数据清洗、处理与分析。

🛠️ 技术栈

  • Python 3.x
  • 核心爬取库:
    • Requests: 用于发送HTTP请求,获取网页和API数据。
    • BeautifulSoup4 & lxml: 用于解析HTML文档,提取页面元素。
    • Selenium: 用于模拟浏览器行为,应对动态加载和复杂交互的页面(主要用于易车网)。
  • 数据处理与存储:
    • Pandas: 用于将抓取的数据整理成数据框(DataFrame)并导出为CSV文件。
  • 反反爬与辅助工具:
    • webdriver-manager: 自动管理浏览器驱动,免去手动配置的麻烦。
    • fontTools: 强大的字体处理库,用于解析易车网的加密字体文件。

🚀 环境准备与安装

在开始之前,请确保您的电脑已经安装了 Python 3 环境和 Chrome 浏览器。

1. 克隆本项目

git clone https://github.com/your-username/car-review-scrapers.git
cd car-review-scrapers

2. 安装依赖库

本项目的所有依赖已整理在requirements.txt文件中。您可以通过pip命令一键安装:

# 建议在虚拟环境中执行
pip install -r requirements.txt

如果您希望手动安装,以下是所需的核心库列表:

pip install requests
pip install pandas
pip install beautifulsoup4
pip install lxml
pip install selenium
pip install webdriver-manager
pip install fonttools

📖 使用说明

每个平台的爬虫脚本都是独立的,您可以根据需要选择运行。在运行前,请根据您的目标车型修改对应脚本文件底部的配置参数。


1. 汽车之家 (汽车之家.py)

此脚本通过请求 JSON API 获取口碑列表,再逐一访问详情页补全信息。

  • 如何配置: 打开 汽车之家.py 文件,滚动到最下方的 if __name__ == "__main__": 部分,修改以下两个变量:

    if __name__ == "__main__":
        # 1. 设置目标车型的 Series ID
        # 例如:比亚迪海豹 (6394), 凯美瑞 (110), 雅阁 (78)
        TARGET_SERIES_ID = 110
        
        # 2. 设置目标车型的名称 (用于文件名)
        TARGET_CAR_NAME = "丰田凯美瑞" 
        
        # 执行爬取任务
        scrape_autohome_koubei(TARGET_SERIES_ID, TARGET_CAR_NAME)
  • 如何运行:

    python 汽车之家.py
  • 输出文件: 脚本运行结束后,将在同级目录下生成名为 autohome_丰田凯美瑞_reviews.csv 的文件。


2. 懂车帝 (懂车帝.py)

此脚本直接请求 JSON API 获取所有口碑数据,效率较高。

  • 如何配置: 打开 懂车帝.py 文件,滚动到最下方的 if __name__ == "__main__": 部分,修改以下变量:

    if __name__ == "__main__":
        # 您只需修改下面这两行即可切换目标车型
        CAR_NAME = "比亚迪汉dm"  # 车型名称,用于保存文件名
        SERIES_ID = "4228"      
        
        # 您也可以按需修改希望爬取的总页数
        TOTAL_PAGES_TO_SCRAPE = 999
    
        scrape_dcd_reviews_robust(CAR_NAME, SERIES_ID, max_pages=TOTAL_PAGES_TO_SCRAPE)
  • 如何运行:

    python 懂车帝.py
  • 输出文件: 脚本运行结束后,将在同级目录下生成名为 dcd_比亚迪汉dm_reviews.csv 的文件。


3. 易车 (易车.py)

此脚本采用Selenium模拟浏览器访问列表页获取所有口碑详情链接,然后使用Requests高速抓取详情页内容,并处理字体反爬。

  • 如何配置: 打开 易车.py 文件,滚动到最下方的 if __name__ == '__main__': 部分,修改以下变量:

    if __name__ == '__main__':
        # 车型ID,通常可以在URL中找到
        car_id = "5845"
        # 车型名称,用于保存文件名
        car_name = "特斯拉model3"
        # 目标车型的口碑列表首页URL
        koubei_url = "https://dianping.yiche.com/model3/koubei/"
        
        main_scraper(car_id, car_name, koubei_url)
  • 如何运行:

    python 易车.py

    注意: 运行此脚本时,会自动打开一个Chrome浏览器窗口进行链接采集,采集完成后会自动关闭。

  • 输出文件: 脚本运行结束后,将在同级目录下生成名为 yiche_特斯拉model3_reviews.csv 的文件。

📊 数据输出

所有脚本最终生成的CSV文件均包含以下核心字段,以保证数据格式的统一性:

  • 评论ID
  • 用户昵称
  • 用户ID
  • 发布日期
  • 评论正文
  • (部分脚本还包含 点赞数评论数 等)

⚠️ 注意事项

  1. 遵守规则: 请遵守各网站的robots.txt协议,并尊重网站版权。本项目仅供学习和技术研究使用。
  2. 合理频率: 本项目已在代码中加入了适当的延时(time.sleep),请勿移除或修改为过低的值,以免对目标服务器造成过大压力。
  3. 时效性: 网站的页面结构或API接口随时可能发生变化,从而导致爬虫脚本失效。如果脚本报错,很可能是目标网站已更新,需要对代码进行相应调整。
  4. 网络环境: 爬取过程中请保持稳定的网络连接。对于网络限制较多的环境(如部分公司内网),可能会出现连接超时等问题。

About

主流汽车垂直网站UGC数据的Py爬虫项目,覆盖autohome,dcd与yiche,接口完整

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Languages