crawl4ai

把网页抓成 LLM 爱吃的干净数据

开源 🏷️基础免费,高级付费 ✅ 目前可打开 自动化工作流 🍴 复刻 9038 🐛 待处理 309 👀 关注 418
访问官网 ↗ GitHub ↗
GitHub 星标 ★ 86750
维护状态 活跃
是否开源 开源
定价模式 🏷️基础免费,高级付费 支持限时试用 · 开源免费,官网提供云服务付费方案,定价信息待确认

项目预览

crawl4ai 项目界面预览图
图片来源:GitHub 官方仓库名片

项目数据

分类自动化工作流
开发团队unclecode
定价模式🏷️基础免费,高级付费
价格说明开源免费,官网提供云服务付费方案,定价信息待确认
访问状态✅ 目前可打开
是否开源是
开源协议Apache-2.0
主要语言Python
技术栈/模型ai,ai-agents,crawler,data-extraction,llm,markdown,mcp,open-source,playwright,python,rag,scraper,web-crawler,web-crawling,web-scraping
GitHub 星标★ 86750
上线时间2024-05-09 00:00:00
代码更新2026-11-01
仓库体积148.2 MB
本站数据更新2026-11-02
维护状态活跃
收录时间2026-09-16
浏览次数2

项目介绍

Crawl4AI 是一个面向大语言模型的开源网页爬虫与抓取工具,用 Python 编写。它解决的核心问题是:传统爬虫抓下来的 HTML 噪声大、结构乱,直接喂给 LLM 既浪费 token 又影响效果。Crawl4AI 在抓取阶段就做清洗和结构化,把网页转成适合 LLM 消费的 Markdown、JSON 等格式,并支持提取正文、链接、媒体等元素。它内置异步并发抓取、浏览器渲染(可处理 JS 动态页面)、代理与反爬策略、缓存和会话管理,还能按 CSS/XPath 或 LLM 指令抽取字段。对做 RAG、AI Agent、数据采集的开发者来说,它把“抓取—清洗—结构化”串成一条流水线,减少自己拼 requests+BeautifulSoup+Playwright 的重复工作,可直接接入向量库或对话系统。

Star 增长趋势

本站每日记录该项目 GitHub 星标变化,观测越久曲线越完整

数据来源:GitHub API 逐日快照 · 收录于 2026-09-16 · 当前星标 ★ 86750

使用教程

难度:入门 约 10 分钟 部署方式:库/依赖 7 步

环境要求

  • 已安装 Python 与 pip 环境
  • 可访问外网(安装依赖与抓取网页)
  • 如需容器部署需已安装 Docker
  • 如需修改源码需 git

安装与启动步骤

  1. 1安装 Crawl4AI

    用 pip 安装并升级到最新版,默认装异步版本,底层用 Playwright 抓取网页。

    pip install -U crawl4ai
  2. 2初始化运行环境

    执行安装后脚本,自动下载并配置 Playwright 浏览器等运行依赖。

    crawl4ai-setup
  3. 3检查安装状态

    运行自检命令,排查环境与依赖是否就绪;有报错按提示修复。

    crawl4ai-doctor
  4. 4手动装浏览器

    仅在出现 Playwright/浏览器相关报错时执行,自动安装 chromium 及系统依赖。

    python -m playwright install --with-deps chromium
  5. 5运行爬取示例

    新建 py 文件写入官方示例,异步抓取指定网页并打印 LLM 友好的 Markdown。

    import asyncio
    from crawl4ai import *
    
    async def main():
        async with AsyncWebCrawler() as crawler:
            result = await crawler.arun(
                url="https://www.nbcnews.com/business",
            )
            print(result.markdown)
    
    if __name__ == "__main__":
        asyncio.run(main())
  6. 6Docker 方式部署

    可选方案,拉取官方镜像并以 11235 端口启动服务,共享内存需设为 1g。

    docker pull unclecode/crawl4ai:latest
    docker run -d -p 11235:11235 --name crawl4ai --shm-size=1g unclecode/crawl4ai:latest
  7. 7源码开发安装

    适合要改源码的贡献者,克隆仓库后以可编辑模式安装,按需追加可选特性。

    git clone https://github.com/unclecode/crawl4ai.git
    cd crawl4ai
    pip install -e .

关键配置

配置项必填说明示例
BrowserConfig(headless=True)否浏览器是否无头运行,示例默认开启无头模式提升速度BrowserConfig(headless=True, verbose=True)
CrawlerRunConfig(cache_mode=CacheMode.EN否控制抓取缓存策略,ENABLED 复用缓存、BYPASS 强制重新抓取CrawlerRunConfig(cache_mode=CacheMode.BYPASS)
DefaultMarkdownGenerator(content_filter=否指定 Markdown 生成时的内容过滤器,用于裁剪噪声正文DefaultMarkdownGenerator(content_filter=PruningContentFilter

如何确认成功

执行 crawl4ai-doctor 无报错,且运行示例脚本能成功打印出网页的 Markdown 内容即表示正常。

常见问题

Q:提示 Playwright 或浏览器相关错误怎么办?

A:先执行 crawl4ai-setup;若仍报错,手动运行 python -m playwright install --with-deps chromium(或 playwright install)重新安装浏览器。

Q:想要同步版(Selenium)怎么安装?

A:执行 pip install crawl4ai[sync],但官方已标注同步版本废弃、未来会移除,建议直接使用异步版本。

Q:Docker 方式启动后服务在哪个端口?

A:容器以 -p 11235:11235 映射,宿主机通过 11235 端口访问;启动时务必加 --shm-size=1g 避免浏览器崩溃。

Q:想基于源码开发或使用可选特性怎么装?

A:git clone 仓库后进入目录执行 pip install -e .,再按需安装 pip install -e ".[torch]"、".[transformer]"、".[all]" 等可选依赖。

注意事项

  • 同步(Selenium)版本已废弃,后续版本将移除,新项目请用异步版本
  • Docker 部署必须保留 --shm-size=1g,否则容器内浏览器易内存不足
  • pip 安装会默认带上异步版本与 Playwright,务必执行 crawl4ai-setup 完成浏览器初始化
  • v0.9.3 为安全修复版本,建议安装/升级到最新版避免已知漏洞

核心亮点

  • 抓取即清洗,直接输出 Markdown/JSON,省去二次解析
  • 支持异步并发与浏览器渲染,能处理 JS 动态页面
  • 内置 CSS/XPath 与 LLM 抽取,可按指令提取结构化字段

不足之处

  • 功能面广导致配置项多,新手需要一定学习成本
  • 重度依赖浏览器渲染时资源占用和运行成本偏高

适用场景

  • 为 RAG 知识库批量采集并清洗网页正文
  • AI Agent 实时抓取网页内容作为上下文
  • 监控竞品或资讯站点并结构化抽取关键信息

替代项目

Firecrawl、Scrapy

上一篇:llm-pid-tuner

下一篇:mixamo-llm-mocap

同类项目推荐

awesome-n8n-templates 开源

海量现成 n8n 工作流,检索即导入,省去从零搭建

The largest open-source collection of n8n workflow templates — 8,697+ ready-to-impo···

★ 120 2026-10-27
Prism-Browser-Community 开源

一台电脑隔离多个浏览器身份,多账号运营不串号

Local-first open-source multi-profile fingerprint browser based on Chromium and Elec···

★ 749 2026-09-15
Drissionpage-MCP-Server 开源

让 Claude Code 直接操控浏览器,自动点页面抓数据

DrissionPage MCP Server · Browser automation for Claude Code, Codex, and MCP client···

★ 484 2026-09-18
subforge 开源

一条命令搞定视频转写、翻译到压制字幕

Rust CLI for AI subtitle workflows: transcribe, segment, translate, evaluate, and bu···

★ 103 2026-09-15
page-agent 开源

用大白话指挥网页干活,省去写脚本的麻烦。

JavaScript in-page GUI agent. Control web interfaces with natural language.

★ 29619 2026-08-09
agtop 开源

像 top 一样实时盯住你的 AI 编程代理

top-style TUI for monitoring AI coding agent sessions

★ 286 2026-10-18
banco 开源

在终端里管项目,告别切来切去的 GUI

:file_folder: A project management tool for the command line

★ 58 2026-08-09
mengwei-local-leads-workbench 开源

搭建本地获客自动化工作台,研究AI内容与发布流程

Half-developed local leads workbench prototype for AI content, video automation, key···

★ 188 2026-08-09
guibot 开源

用图像识别找控件,跨平台自动点界面

A tool for GUI automation using a variety of computer vision and display control bac···

★ 187 2026-09-18