返回市场
人工智能光标抓取助手

人工智能光标抓取助手

作者:TheWebScrapingClub41 星标更新:2025-04-13

项目介绍

AI-Cursor-Scraping-Assistant

一个强大的工具,利用Cursor AI和MCP(模型上下文协议)轻松生成适用于各种类型网站的网络爬虫。该项目帮助您快速分析网站并以最小的努力生成适当的Scrapy或Camoufox爬虫。

项目概述

本项目包含两个主要组件:

  1. Cursor规则 - 一组规则,教授Cursor AI如何分析网站并创建不同类型的Scrapy蜘蛛
  2. MCP工具 - 一套增强Cursor进行网络抓取任务能力的模型上下文协议工具

预备条件

  • 安装Cursor AI
  • 安装Python 3.10+
  • 具有基本的网络抓取概念知识

安装

将此仓库克隆到您的本地机器:

git clone https://github.com/TheWebScrapingClub/AI-Cursor-Scraping-Assistant.git
cd AI-Cursor-Scraping-Assistant

安装所需的依赖项:

pip install mcp camoufox scrapy

如果您计划使用Camoufox,您需要获取其浏览器二进制文件:

python -m camoufox fetch

设置

设置MCP服务器

MCP服务器提供了一些工具,帮助Cursor AI分析网页并生成XPath选择器。启动MCP服务器:

  1. 导航至MCPfiles目录:

    cd MCPfiles
    
  2. 更新xpath_server.py中的CAMOUFOX_FILE_PATH,使其指向您的本地Camoufox_template.py文件。

  3. 启动MCP服务器:

    python xpath_server.py
    
  4. 在Cursor中,通过设置或使用MCP面板连接到MCP服务器。

Cursor规则

cursor-rules目录包含规则,这些规则教授Cursor AI如何分析网站并创建不同类型的爬虫。当您在Cursor中打开项目时,这些规则会自动加载。

详细的Cursor规则解释

cursor-rules目录包含一组MDC(Markdown配置)文件,指导Cursor在创建网络爬虫时的行为:

prerequisites.mdc

此规则处理创建任何爬虫之前的初始设置任务:

  • 使用pwd获取当前项目的完整路径
  • 将路径存储在上下文中供其他规则稍后使用
  • 确认执行初步行动后再继续

website-analysis.mdc

此综合规则引导Cursor进行网站分析:

  • 确定要构建的Scrapy蜘蛛类型(PLP、PDP等)
  • 获取并存储首页HTML和cookie
  • 使用MCP工具剥离CSS以简化HTML分析
  • 检查cookie中的防机器人保护(Akamai、Datadome、PerimeterX等)
  • 对于PLP爬虫:获取类别页面,分析结构,查找JSON数据
  • 对于PDP爬虫:获取产品页面,分析结构,查找JSON数据
  • 检测schema.org标记和现代框架如Next.js

scrapy-step-by-step-process.mdc

此规则提供了创建爬虫的执行流程:

  • 描述应遵循的步骤序列
  • 按正确顺序引用其他规则文件
  • 确保在创建爬虫之前完成预备行动
  • 引导Cursor在生成代码前分析网站

scrapy.mdc

此详尽规则包含了Scrapy的最佳实践:

  • 定义推荐的代码组织和目录结构
  • 详细说明文件命名约定和模块组织
  • 提供组件架构指南
  • 提出代码拆分和重用策略
  • 包括性能优化建议
  • 覆盖安全实践、错误处理和日志记录
  • 提供具体的语法示例和代码片段

scraper-models.mdc

此规则定义了可以创建的不同类型的爬虫:

  • 电子商务PLP:详细的数据结构、字段定义和实现步骤
  • 电子商务PDP:详细的数据结构、字段定义和实现步骤
  • 所有爬虫类型的字段映射指南
  • 创建每种类型爬虫的逐步说明
  • 默认设置建议
  • 针对不同保护系统的反机器人对策

使用方法

这是如何使用AI-Cursor-Scraping-Assistant的方法:

  1. 在Cursor AI中打开项目
  2. 确保MCP服务器正在运行
  3. 请求Cursor创建爬虫,例如:
    为gucci.com编写一个电子商务PLP爬虫
    

Cursor随后将:

  1. 分析网站结构
  2. 检查防机器人保护
  3. 提取相关HTML元素
  4. 根据网站类型生成完整的Scrapy蜘蛛

可用的爬虫类型

您可以请求不同类型的爬虫:

  • 电子商务PLP(产品列表页) - 抓取产品目录/类别页面
  • 电子商务PDP(产品详情页) - 抓取详细的产品信息

例如:

为nike.com编写一个电子商务PDP爬虫

高级使用

Camoufox集成

该项目包括一个用于创建隐身爬虫的Camoufox模板,这些爬虫可以绕过某些防机器人措施。MCP工具帮助您:

  1. 使用Camoufox获取页面内容
  2. 为所需元素生成XPath选择器
  3. 基于模板创建完整的Camoufox爬虫

自定义爬虫

您可以通过向cursor-rules文件添加新的爬虫类型来扩展功能。模块化设计允许轻松定制。

项目结构

AI-Cursor-Scraping-Assistant/
├── MCPfiles/
│   ├── xpath_server.py     # 带有网络抓取工具的MCP服务器
│   └── Camoufox_template.py # Camoufox爬虫模板
├── cursor-rules/
│   ├── website-analysis.mdc    # 分析网站的规则
│   ├── scrapy.mdc              # Scrapy的最佳实践
│   ├── scrapy-step-by-step-process.mdc # 创建爬虫的指南
│   ├── scraper-models.mdc      # 不同爬虫类型的模板
│   └── prerequisites.m
└── README.md

TODO:未来改进

以下功能计划在未来开发:

代理集成

  • 当操作员请求时添加代理支持
  • 实现代理轮换策略
  • 支持不同的代理提供商
  • 处理代理认证
  • 与流行的代理服务集成

改进的XPath生成和验证

  • 添加生成XPath选择器的验证机制
  • 实现选择器细化的反馈循环
  • 控制流管理以重新工作选择器
  • 自动修正有问题的选择器
  • 处理动态内容和AJAX加载等边缘情况

其他计划的功能

  • 支持更多类型的爬虫(新闻站点、社交媒体等)
  • 与额外的防机器人绕过技术集成
  • 增强的JSON提取能力
  • 支持更复杂的导航模式
  • 多页抓取优化

参考资料

本项目基于The Web Scraping Club的文章:

有关网络抓取技术和最佳实践的更多信息,请访问The Web Scraping Club

贡献

欢迎贡献!请随时提交Pull Request。

许可证

本项目根据MIT许可证发布 - 查看LICENSE文件了解详情。