Files
crawl4zeroerr/1_零差云控官网爬虫方案.md

3.3 KiB
Raw Permalink Blame History

零差云控官网爬虫方案

项目概述

  • 网页源: https://www.zeroerr.cn/
  • 目标: 爬取官网所有子页面内容,生成 Markdown 和 Word 文档
  • 用途: 作为 RAGFlow 知识库,用于售前 AI 客服

代码结构

crawl_0131(1)/
├── main.py                 # 主入口
├── requirements.txt        # 依赖
├── zeroerr_crawler/        # 爬虫模块
│   ├── __init__.py
│   ├── config.py           # 配置文件(所有任务配置)
│   ├── base_crawler.py     # 基础爬虫类
│   ├── product_crawler.py  # 产品页专用爬虫(处理 eRob、eCoder、配件)
│   ├── extract_abstract.py # 摘要提取模块(使用大模型生成文档摘要)
│   ├── post_process.py     # Word 文档后处理模块(优化连续标题)
│   └── utils.py            # 工具函数
└── output/                 # 输出目录

爬取任务完成情况

任务 命令 篇数 状态
应用案例 python main.py case 14篇 ✅ 完成
常见问题 python main.py issue 32篇 ✅ 完成
企业新闻 python main.py news 11篇 ✅ 完成
认证与资质 python main.py certification 10篇 ✅ 完成
机器人关节 python main.py erob 12篇 ✅ 完成
编码器 python main.py ecoder 7篇 ✅ 完成
配件 python main.py tools 13篇 ✅ 完成
关于我们 python main.py about 2篇 ✅ 完成
服务与支持 python main.py support 1篇 ✅ 完成
服务与支持-详细页面 python main.py service_detail 7篇 ✅ 完成
资料下载 python main.py download 1篇 ✅ 完成

总计: 110 篇文章

注:服务与支持和服务与支持-详细页面合并输出到同一个目录 output/服务与支持/

使用方法

# 安装依赖
pip install -r requirements.txt

# 查看所有可用任务
python main.py --list

# 爬取单个任务
python main.py case

# 爬取多个任务
python main.py case issue news

# 爬取全部
python main.py

输出格式

  • 每个分类生成一个汇总文档(xxx_汇总.md 和 xxx_汇总.docx)
  • 图片保存到对应分类的 images/ 目录
  • Word 文档中嵌入本地图片
  • 支持表格、列表、标题等格式转换

技术说明

  • 使用 StandardCrawler 处理标准页面(新闻、案例、问题等)
  • 使用 ProductCrawler 处理产品页面(机器人关节、编码器、配件)
  • 支持多种页面布局和内容选择器
  • 自动去重标题,优化 Word 文档格式
  • 层级处理:Markdown 和 Word 采用相同的层级处理规则,确保文档结构一致
    • 页面内容中的 h1 自动降级为二级标题,确保层级结构清晰
    • Word 文档生成后自动进行后处理,优化连续标题
  • 摘要提取:extract_abstract.py 模块使用大模型(OpenAI API)为每个分类的文档集合生成摘要
    • 面向客户售前咨询场景,生成100-200字的简洁摘要
    • 自动生成相关链接列表
    • 摘要前自动添加索引页链接
    • 摘要失败时自动降级为仅生成链接列表

待处理项目