mcpField
W
website-to-vite-scraper

website-to-vite-scraper

github.com/breverdbidder开发46 次安装
代码仓库

关于 website-to-vite-scraper

website-to-vite-scraper 是支持多种提供方的网站抓取技能,可提取网页内容和资源,也能处理 JavaScript 渲染页面。它支持生成网站文件并部署到 Cloudflare Pages 的工作流。

主要功能

  1. 01使用 Playwright、Apify 或 Firecrawl 抓取
  2. 02渲染 JavaScript 页面
  3. 03提取文本、HTML 和元数据
  4. 04下载网站资源
  5. 05部署到 Cloudflare Pages

适用场景

  1. 01抓取 JavaScript 渲染的网站
  2. 02为 AI 或 RAG 流程提取内容
  3. 03抓取带反爬保护的网站
  4. 04生成包含资源的本地网站副本

MCP 相关

README 提到可将 Claude Desktop 或 Cursor 连接到 Apify MCP,以进行 AI 网站抓取,并提供托管的 Apify MCP 端点。

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/breverdbidder/life-os --skill website-to-vite-scraper

安装后在 Claude Code 中输入/website-to-vite-scraper确认已加载。

包含的文件

除 SKILL.md 外,安装时一起下载的参考资料和脚本。

SCRAPER_AGENT_V2_PLAN.md
website_scraper.py
website_scraper_v2.py

详细介绍

Website-to-Vite Scraper V2

适用于任意网站类型的多提供商网站抓取工具,支持 AI 驱动的内容提取。

抓取方式

方式最适合反机器人JS 渲染费用
Playwright常规网站、Next.js/React 应用❌✅ 完整免费
Apify RAG Browser针对 LLM/RAG 优化的内容✅✅ 自适应积分
Crawl4AIAI 训练数据、干净提取✅✅积分
Firecrawl受保护的网站、绕过反机器人机制✅✅✅$16/mo

快速开始

GitHub Actions(推荐)
# Go to: Actions → Website Scraper V2 → Run workflow
# Options:
#   - URL: https://www.reventure.app/
#   - Project name: reventure-clone
#   - Method: all (tries all providers)
#   - Deploy: true
API MEGA LIBRARY 集成

我们的库中的以下 API 可增强此抓取工具:

API用途状态
APIFY_API_TOKENRAG Browser、Crawl4AI、Web Scraper✅ 已配置
FIRECRAWL_API_KEY绕过反机器人机制、隐身模式✅ 已配置
BROWSERLESS_API_KEY替代无头浏览器🔄 可用
MCP 服务集成

将 Claude Desktop/Cursor 连接到 Apify MCP,以进行 AI 驱动的抓取:

{
  "mcpServers": {
    "apify": {
      "command": "npx",
      "args": ["@apify/actors-mcp-server"],
      "env": {
        "APIFY_TOKEN": "your-apify-api-token"
      }
    }
  }
}

或使用托管服务:https://mcp.apify.com?token=YOUR_TOKEN

使用的 Apify Actors

apify/rag-web-browser
  • 用途: 针对 LLM 优化的网页内容提取
  • 输出: Markdown、HTML、文本
  • 功能:
    • Playwright 自适应(可处理 JS)
    • 干净的内容提取
    • 跟踪链接
    • 元数据提取
raizen/ai-web-scraper (Crawl4AI)
  • 用途: 收集 AI 训练数据
  • 输出: 清理后的 Markdown、结构化链接
  • 功能:
    • 排除模板内容(页眉、页脚、导航)
    • 字数阈值筛选
    • 外部链接筛选
Firecrawl
  • 用途: 受反机器人机制保护的网站
  • 输出: Markdown、HTML、屏幕截图
  • 功能:
    • 反检测技术
    • JavaScript 渲染
    • 主要内容提取
    • 等待 5 秒以加载动态内容

输出结构

project-name/
├── dist/
│   ├── index.html      # Best merged HTML
│   ├── screenshot.png  # Full page capture
│   ├── meta.json       # Scrape metadata
│   └── assets/
│       ├── images/     # Downloaded images
│       ├── css/        # Stylesheets
│       └── js/         # Scripts
└── results/
    ├── playwright/     # Raw Playwright output
    ├── apify-rag/      # RAG Browser output
    ├── crawl4ai/       # Crawl4AI output
    └── firecrawl/      # Firecrawl output

处理 CSR/SPA 网站

Next.js、React、Vue 等客户端渲染的网站需要执行 JavaScript:

  1. Playwright 等待 networkidle 状态,然后再等待 5 秒
  2. Apify RAG 使用自适应爬虫(需要时使用 Playwright)
  3. Firecrawl 内置 JS 渲染功能

提取 __NEXT_DATA__(Next.js 网站):

  • Playwright 会自动提取并保存到 next_data.json
  • 可对其进行解析,以重建静态页面

工作流参数

参数类型默认值说明
urlstring必填要抓取的网站 URL
project_namestring必填输出文件夹/Cloudflare 项目名称
scrape_methodchoiceplaywright要使用的方法
extract_assetsbooleantrue下载图片/CSS/JS
deploy_cloudflarebooleantrue部署到 Cloudflare Pages

优化费用

场景推荐方式
简单静态网站Playwright(免费)
JS 密集型 SPAPlaywright → Apify RAG 回退
受保护的网站(Cloudflare)Firecrawl
AI/RAG 工作流Apify RAG 或 Crawl4AI
最大覆盖范围all 方法

安全评估

根据 API_MEGA_LIBRARY 指南:

API安全评分建议
Apify85/100✅ 采用
Firecrawl82/100✅ 采用
Playwright90/100✅ 采用(本地)

故障排除

网站返回空白页面
  1. 尝试使用 scrape_method: all,以调用多个提供商
  2. 增加 Playwright 的等待时间
  3. 检查网站是否屏蔽数据中心 IP → 使用 Firecrawl
资源未下载
  1. 某些网站会屏蔽直接资源请求
  2. 使用原始 HTML 中的相对路径
  3. 检查是否存在 CORS 限制
检测到 Cloudflare 保护
  1. 使用 Firecrawl(支持绕过反机器人机制)
  2. 或使用带住宅代理的 Apify

相关技能

  • auction-results - 使用类似方法抓取拍卖数据
  • bcpao-scraper - 提取 BCPAO 房产数据
  • youtube-transcript - 提取视频内容

更新日志

V2.0 (Dec 2025)
  • Added multi-provider support (Playwright, Apify, Firecrawl)
  • MCP server integration
  • Automatic provider fallback
  • Asset downloading
  • Cloudflare Pages deployment
V1.0 (Dec 2025)
  • Initial Playwright-only scraper
  • Basic HTML/CSS/JS extraction

评论

支持 Markdown