标签: 数据采集

  • Crawl4AI:把全网网页变成 LLM 能直接用的干净 Markdown,RAG 数据清洗一步到位(71.8K★)

    Crawl4AI:把全网网页变成 LLM 能直接用的干净 Markdown,RAG 数据清洗一步到位(71.8K★)

    Crawl4AI 项目封面

    一、项目简介

    Crawl4AI 是一个开源、对大模型友好的网页爬虫与抓取框架,能把任意网页一键转换成结构清晰、可直接喂给 LLM / RAG 的 Markdown,并支持结构化数据提取、截图、动态渲染等能力。对做检索增强、知识库、Agent 联网取数的人来说,它基本等于把”爬虫 + 清洗”两道工序合并了。

    二、安装要求和过程

    环境要求:Python 3.10 及以上;底层基于 Playwright(Chromium),首次使用需下载浏览器内核。

    快速安装(Python 包):

    # 安装
    pip install -U crawl4ai
    
    # 安装后执行一键浏览器配置
    crawl4ai-setup
    
    # 自检环境是否就绪
    crawl4ai-doctor
    
    # 若遇到浏览器相关报错,可手动补全
    python -m playwright install --with-deps chromium

    Docker 部署(推荐生产环境):

    docker pull unclecode/crawl4ai:latest
    docker run -d -p 11235:11235 --name crawl4ai --shm-size=1g unclecode/crawl4ai:latest
    # 监控面板: http://localhost:11235/dashboard
    # 交互 playground: http://localhost:11235/playground

    三、核心功能

    • LLM 就绪的 Markdown 输出:智能 Markdown 保留标题、表格、代码块,并提供 Fit Markdown(裁剪导航/广告等无关内容)、引用标注,以及基于 BM25 算法的内容过滤,正文噪声大幅降低。
    • 结构化数据提取:支持基于 LLM 的 Schema 提取、CSS 选择器提取、余弦相似度匹配,配合分块(Chunk)策略,直接产出 Pydantic 结构化对象,无需手写正则。
    • 真·浏览器级抓取:基于 Playwright 托管浏览器,支持会话保持、代理、Cookie、用户脚本、Hook、动态视口调整、懒加载处理,还能截图与生成 PDF。
    • 自适应爬取与调度:异步浏览器池 + 缓存机制,能学习网站结构、只爬该爬的页面;内置深度爬取与内存自适应调度,从单页到万级站点都能扛。
    • 部署灵活、可接 Agent:零密钥、CLI + Docker 双形态;新版 Docker 自带监控面板、浏览器池预热、Playground 与 MCP 集成,可直连 Claude Code 等 AI 编程工具。

    四、典型使用场景

    • 搭 RAG 知识库:把公司文档站、竞品官网、行业博客批量抓成干净 Markdown,直接喂进向量库做检索增强,省去大量手写清洗规则。
    • 生成 LLM 训练 / 微调语料:用 LLM 提取策略从定价页、榜单页抽取结构化字段(例如各家模型的价格表),产出干净的 JSON 数据集。
    • AI Agent 联网取数:通过 Docker + MCP 把 Crawl4AI 接进 Agent 工作流,让智能体实时抓取网页、执行 JS、截图后回写结果,补足大模型”看不见实时网页”的短板。

    五、推荐理由

    我自己踩过不少爬虫的坑:传统方案要么反爬头疼,要么抓下来的 Markdown 一堆导航/侧边栏噪音,接 RAG 前还得再写一层清洗。Crawl4AI 的 Fit Markdown + BM25 过滤基本把”正文 vs 杂质”这件事做对了,接检索增强时相当省心;异步 + 浏览器池的性能也不错,小规模到大规模都能用。Docker 镜像开箱即用,MCP 直连 Claude Code 这点对做 Agent 的人尤其香。小提醒:它依赖 Playwright/Chromium,首次部署体积不小;上生产建议走 0.9.0+ 的安全加固 Docker 镜像(已修复路径遍历 / SSRF / RCE)。

    六、下载地址

  • MediaCrawler:多平台自媒体数据采集工具,54.9K+ Stars 让 Playwright 爬虫变得简单

    MediaCrawler:多平台自媒体数据采集工具,54.9K+ Stars 让 Playwright 爬虫变得简单

    🕷️ MediaCrawler

    多平台自媒体数据采集工具 —— 为 AI 时代提供高质量训练数据

    ⭐ 54,991+ Stars  |  🐍 Python  |  🎭 Playwright  |  📜 MIT License

    📌 项目简介

    MediaCrawler 是一个多平台自媒体数据采集工具,支持小红书、抖音、快手、B站、微博、百度贴吧、知乎共 7 个主流内容平台的公开信息抓取。项目基于 Playwright 浏览器自动化框架实现,无需 JS 逆向,直接利用保存的登录态浏览器上下文通过 JS 表达式获取签名参数,大幅降低了爬虫技术门槛。

    该项目定位为学习爬虫技术、研究浏览器自动化方案的开源教学项目,同时也为 LLM 训练数据收集、内容分析等场景提供了实用工具链。

    Python 3.11+
    Playwright
    7 大平台支持
    WebUI 可视化
    多存储格式
    MIT 许可

    ⚙️ 安装要求与过程

    环境要求

    • Python:推荐 3.11 及以上版本(已支持 Python 3.13)
    • Node.js:≥ 16.0.0(WebUI 前端需要)
    • Chrome 浏览器:推荐 ≥ 144 版本(开启远程调试后可复用登录态)
    • 包管理工具:推荐 uv(速度快、依赖解析准确)

    快速安装(5 分钟上手)

    # 1. 克隆项目
    git clone https://github.com/NanmiCoder/MediaCrawler.git
    cd MediaCrawler
    
    # 2. 安装 Python 依赖(使用 uv)
    uv sync
    
    # 3.(可选)安装 Playwright 浏览器驱动(标准模式需要)
    uv run playwright install
    
    # 4.(推荐)配置 Chrome 远程调试
    # 在 Chrome 地址栏输入 chrome://inspect/#remote-debugging
    # 勾选允许远程调试,确认 Server 运行在 127.0.0.1:9222

    WebUI 可视化界面部署

    # 开发调试模式
    # 终端 1:启动后端 API 服务(默认端口 8080)
    uv run uvicorn api.main:app --port 8080 --reload
    
    # 终端 2:启动前端开发服务
    cd webui
    npm install
    npm run dev
    # 访问 http://localhost:5173/ 即可使用
    
    # 生产部署模式
    cd webui
    npm install
    npm run build
    uv run uvicorn api.main:app --port 8080 --reload
    # 直接访问 http://localhost:8080

    ✨ 核心功能

    • 7 大平台全覆盖:小红书、抖音、快手、B站、微博、百度贴吧、知乎,功能覆盖度一致
    • 多种爬取模式:支持关键词搜索爬取、指定 ID 爬取帖子/视频、二级评论爬取、指定创作者主页爬取
    • 登录态缓存:基于 Playwright 保存登录态,支持 CDP 模式连接本地 Chrome,复用已有登录态、Cookie 和扩展,降低平台风控风险
    • WebUI 可视化界面:无需命令行,直接在网页配置爬虫参数、查看运行状态、导出数据,大幅降低使用门槛
    • 多存储格式支持:CSV、JSON、JSONL、Excel、SQLite、MySQL 等多种数据存储格式,满足不同 downstream 需求
    • IP 代理池:内置代理池支持,可配置多账号+IP 轮换,降低被封禁风险
    • 评论词云图:自动生成评论词云图,直观展示用户情感倾向和热点话题

    🖼️ 支持平台一览

    📕 小红书

    搜索笔记、指定帖子详情、创作者主页、二级评论

    🎵 抖音

    搜索视频、视频详情、用户信息、评论数据

    🎬 快手

    视频搜索、详情页、用户主页、评论爬取

    📺 B站

    视频搜索、视频详情、UP 主信息、弹幕与评论

    💬 微博

    关键词搜索、博文详情、评论、用户主页

    📝 知乎

    问答搜索、问题详情、回答内容、评论数据

    🙋 百度贴吧

    贴子搜索、贴子详情、回复内容、吧内信息

    🚀 典型使用场景

    场景一:LLM 训练数据收集

    MediaCrawler 可以批量采集各平台公开的文本、图片、评论数据,经过清洗后作为 LLM 的微调或预训练数据。相比手动采集,效率提升 100 倍以上,且支持断点续爬,适合大规模数据采集任务。

    # 爬取小红书关键词搜索结果(用于训练数据分析类 LLM)
    uv run main.py --platform xhs --lt qrcode --type search
    # 数据自动保存为 JSON/CSV,可直接接入训练 pipeline

    场景二:社交媒体舆情监测

    企业或研究机构可以使用 MediaCrawler 定期采集特定关键词的社交媒体内容,结合 LLM 进行情感分析、热点话题发现和舆情预警。WebUI 界面使得非技术团队也能轻松配置和运行爬取任务。

    # 爬取指定关键词的微博内容
    uv run main.py --platform weibo --lt cookie --type search --keywords "AI大模型"

    场景三:内容创作者竞品分析

    自媒体运营者可以用 MediaCrawler 采集同类创作者的高赞内容、评论热词、发布时间规律等,为内容策略优化提供数据支撑。结合评论词云图功能,可以快速把握受众偏好。

    💡 推荐理由

    🌟 个人使用心得:
    MediaCrawler 是我见过的最易上手的社交媒体数据采集项目之一。它巧妙避开了最难的 JS 逆向问题 —— 通过保存登录态浏览器上下文直接执行 JS 获取签名,让爬虫开发从”黑魔法”变成”标准流程”。

    三大亮点:
    零 JS 逆向:基于 Playwright 的登录态复用机制,不需要分析各平台的签名算法
    WebUI 降低门槛:可视化界面让非程序员也能使用,是真正”可用”的开源工具
    CDP 模式创新:连接本地 Chrome,复用真实用户的登录态和扩展,大幅降低风控概率

    需要注意的是,项目明确声明仅可用于学习研究,禁止用于商业用途和非法爬虫行为。建议在遵守平台 ToS 和相关法律法规的前提下使用。

    📦 下载地址


    ⚠️ 注意事项

    🚨 法律与合规提醒:
    ① 本项目仅供学习研究使用,禁止用于商业用途和非法爬虫行为
    ② 因违规使用产生的法律责任由使用者自行承担
    ③ 请遵守各平台的 robots.txt 和服务条款(ToS)
    ④ 建议合理控制爬取频率,避免对目标平台造成过大压力
    ⑤ 不要爬取明确标注”禁止爬取”的私密或付费内容

    📅 数据更新至 2026 年 7 月  |  ⭐ GitHub: NanmiCoder/MediaCrawler

  • 【开源推荐】crawl4ai:68.3K+ Stars!专为LLM设计的网页爬虫,让AI直接读懂网页内容

    【开源推荐】crawl4ai:68.3K+ Stars!专为LLM设计的网页爬虫,让AI直接读懂网页内容

    crawl4ai - LLM友好网页爬虫工具

    crawl4ai – 专为LLM和AI Agent设计的网页爬虫工具 @reference_1@

    📌 项目简介

    crawl4ai 是一款专为LLM和AI Agent设计的开源网页爬虫工具,能将任意网页内容转换为干净的Markdown格式,可直接用于RAG、AI Agent、数据管道等场景,无需依赖任何付费API。

    68.3K+
    GitHub Stars

    Python
    开发语言

    v0.6+
    最新版本

    ⚙️
    安装要求和过程

    环境要求

    • Python ≥ 3.10
    • Playwright(用于异步浏览器控制)
    • 支持 Windows / macOS / Linux

    快速安装(4步搞定)

    # 第1步:安装 crawl4ai
    pip install -U crawl4ai
    # 第2步:配置浏览器依赖
    crawl4ai-setup
    # 第3步:验证安装
    crawl4ai-doctor
    # (可选)如 Playwright 报错,手动安装浏览器
    python -m playwright install chromium

    Docker 部署(生产推荐)

    # 拉取官方镜像
    docker pull unclecode/crawl4ai:latest
    # 启动容器
    docker run -d -p 11235:11235 –name crawl4ai –shm-size=1g unclecode/crawl4ai:latest
    # 访问监控面板
    http://localhost:11235/dashboard


    核心功能

    ① 智能 Markdown 生成

    生成结构清晰、格式准确的干净 Markdown,支持 Fit Markdown 启发式过滤,自动剔除无关噪音内容。支持 BM25 算法过滤,可提取核心信息,更适合 AI 处理。

    ② LLM 驱动的结构化数据提取

    支持所有 LLM(开源/闭源)驱动的结构化数据提取。内置多种分块策略,支持基于用户查询的语义内容匹配,可通过自定义 Schema 从重复页面模式中批量提取结构化 JSON。

    ③ 浏览器深度集成

    支持托管用户自有浏览器,通过 Chrome DevTools 协议实现远程浏览器控制。支持浏览器配置文件持久化(保存认证状态、Cookie),完美支持需要登录的网站爬取。

    ④ 动态页面与反爬对抗

    支持执行 JavaScript、等待异步动态内容加载、处理无限滚动页面。提供隐身模式模拟真实用户行为,支持自定义请求头、Cookie、User-Agent 和代理认证,有效绕过常见反爬限制。

    ⑤ Docker 一键部署 + API 服务

    提供优化后的 Docker 镜像,内置 FastAPI 服务,开箱即用。内置 JWT 令牌认证保障 API 安全,支持大规模生产环境部署,是构建数据采集基础设施的最佳选择。

    💡
    典型使用场景

    场景1:RAG 知识库数据准备

    将网页内容转换为干净 Markdown,作为 RAG 系统的知识库来源。crawl4ai 的 Fit Markdown 功能可自动过滤导航栏、广告、页脚等噪音,只保留核心正文,避免无关内容干扰大模型输出。配合深度爬取(BFS/DFS策略)可批量采集整个网站。

    场景2:AI Agent 实时信息获取工具

    将 crawl4ai 封装为 AI Agent 的工具函数,让 Agent 能够自主爬取所需网页内容。比如用户问”今天有哪些 AI 新闻?”,Agent 可自动爬取新闻网站并提取结构化信息,真正实现 AI 联网能力。

    场景3:大规模数据采集管道

    结合 Docker 部署、浏览器池、缓存机制,搭建大规模高并发网页数据采集系统。内置的浏览器配置文件持久化能力,可保存登录状态实现需要认证的网站批量采集,适合构建企业级数据采集基础设施。

    🚀 30秒快速开始

    Python 代码方式:
    import asyncio
    from crawl4ai import *

    async def main():
    async with AsyncWebCrawler() as crawler:
    result = await crawler.arun(url=”https://example.com”)
    print(result.markdown) # 获取干净 Markdown

    if __name__ == “__main__”:
    asyncio.run(main())

    CLI 命令行方式:
    crwl https://example.com -o markdown
    # 深度爬取,最多10个页面
    crwl https://docs.crawl4ai.com –deep-crawl bfs –max-pages 10

    💝
    推荐理由

    如果你正在构建 RAG 系统或 AI Agent,crawl4ai 是目前开源界最值得关注的网页数据采集工具。它解决了传统爬虫的两个核心痛点:

    第一,真正为 LLM 优化。 传统爬虫输出的是原始 HTML 或杂乱文本,需要大量后处理才能喂给大模型。crawl4ai 直接输出干净、结构化的 Markdown,内置的 Fit Markdown 功能可以智能过滤导航、广告等噪音,让 RAG 召回质量大幅提升。

    第二,对动态页面和反爬场景的支持非常完善。 基于 Playwright 的浏览器控制,可以处理 React/Vue 等前端框架渲染的页面,支持等待异步内容加载、处理无限滚动。隐身模式和浏览器指纹自定义功能,让我在采集一些有反爬机制的网站时也能稳定获取数据。

    最让我惊喜的是它的 Docker 部署方案。 几分钟就能搭建一个带 API 服务的爬取引擎,内置 JWT 认证,可以直接集成到现有数据管道中。对于需要大规模采集的场景,这比手写 Scrapy 爬虫效率高太多了。

    ⭐ 总之,如果你需要为 AI 应用添加网页数据获取能力,crawl4ai 是目前最成熟的开源选择,没有之一。

    📥 下载地址

    License: Apache 2.0 | 作者: UncleCode | 最近更新: 2026年6月

    💡 关注【开源推荐】系列,每周带你发现最值得关注的 AI 开源项目
    ⭐ 如果这篇文章对你有帮助,欢迎在 WordPress 点赞留言!

  • crawl4AI:66.7K Stars!LLM友好型网页爬虫,让AI直接读懂网页内容

    crawl4AI:66.7K Stars!LLM友好型网页爬虫,让AI直接读懂网页内容

    crawl4ai logo
    ─ ✦ ─ ✦ ─ ✦ ─ ✦ ─

    ## 🚀 一句话介绍

    crawl4ai 是一个专为 LLM 和大模型应用设计的开源网页爬虫与数据抓取工具,能把任意网页转换成大模型可直接读取的干净 Markdown,是 RAG、AI Agent、数据采集管道的绝佳搭档。

    66.7K+GitHub Stars
    Apache 2.0开源协议
    5万+开发者社区
    Python主要语言
    ─ ✦ ─ ✦ ─ ✦ ─ ✦ ─

    ## 🔧 安装要求与步骤

    crawl4ai 对环境的依赖相当克制,核心只需 Python 3.9+ 即可运行。

    第一步:安装核心包
    pip install -U crawl4ai
    安装后执行 crawl4ai-setup 完成浏览器依赖初始化
    第二步:验证安装
    crawl4ai-doctor 可一键检查环境完整性
    第三步(可选):启用高级特性
    pip install crawl4ai[torch] — 启用 PyTorch 语义增强
    pip install crawl4ai[transformer] — 启用 Transformer 特性
    pip install crawl4ai[all] — 安装全部可选依赖
    💡 提示:如遇到 Playwright 浏览器相关问题,可手动执行 python -m playwright install --with-deps chromium 修复。
    ─ ✦ ─ ✦ ─ ✦ ─ ✦ ─

    ## ⚡ 核心功能

    📝 智能 Markdown 生成

    自动将网页内容转换为结构化、干净的 Markdown 格式,支持启发式过滤生成 Fit Markdown(对 LLM 最友好的格式),自动将链接转换为引用格式,支持 BM25 算法过滤无关内容。

    📊 结构化数据提取

    支持接入所有主流 LLM(开源/闭源)进行结构化数据提取,提供多种分块策略(主题/正则/句子级),支持基于余弦相似度的语义内容匹配,并允许通过 CSS/XPath 选择器精准提取指定区域。

    🖥️ 浏览器精细控制

    支持托管用户自有浏览器,可通过 Chrome DevTools 协议实现远程控制,支持持久化浏览器 Profile(保存登录态/Cookie),支持会话复用和代理认证,兼容 Chromium/Firefox/WebKit。

    🚀 生产级部署能力

    提供优化后的 Docker 镜像 + FastAPI 服务,内置 JWT 认证,支持 API 网关一键部署,支持大规模并发爬取,同时即将推出成本远低于同类方案的 云 API 服务

    ─ ✦ ─ ✦ ─ ✦ ─ ✦ ─

    ## 🏗️ 典型使用场景

    场景一:RAG 应用的数据供给

    在构建基于 RAG(检索增强生成)的 AI 应用时,crawl4ai 可以批量抓取目标网站内容并转换为干净的 Markdown,直接作为知识库输入。相比传统爬虫,它输出的 Fit Markdown 去除了导航栏、广告、页脚等噪音,大幅提升 RAG 召回质量。

    场景二:AI Agent 实时网页数据获取

    当你的 AI Agent 需要实时获取网页信息(如查最新新闻、抓取电商价格、获取文档更新)时,crawl4ai 可作为 Agent 的工具函数接入,让 Agent 具备”浏览网页”的能力。

    场景三:大规模数据采集管道

    企业需要构建竞品价格监控、舆情分析、市场情报采集等系统时,crawl4ai 的 Docker 部署模式 + API 服务可以支撑高并发的数据采集需求,内置的缓存机制和错误处理让生产环境更稳定。

    ─ ✦ ─ ✦ ─ ✦ ─ ✦ ─

    ## 💡 推荐理由

    **这是我目前在 Python 生态里用过的最适合 LLM 场景的爬虫工具,没有之一。**

    三个让我印象最深的亮点:

    ① Fit Markdown 真的能打。 传统爬虫抓下来的网页全是噪音(导航、广告、相关推荐……),丢给 LLM 既浪费 Token 又影响效果。crawl4ai 的 Fit Markdown 通过启发式算法自动过滤无关内容,输出几乎可以直接喂给大模型的好内容。

    ② 对开发者极度友好。 一行 pip install crawl4ai 就能跑起来,CLI 命令 crwl 让非 Python 场景也能快速验证效果。更难得的是它提供了 Playground 交互式测试页面,调试爬虫策略不用写一行代码。

    ③ 架构设计有前瞻性。 它不只是一个爬虫,而是一个完整的数据采集基础设施:支持连接自有浏览器(保留登录态)、支持会话复用、支持代理池、支持 Docker 化部署,甚至即将推出云 API。这种”既能单机玩,又能上生产”的定位非常难得。

    📦 项目地址:github.com/unclecode/crawl4ai

    🌐 官方网站:crawl4ai.com

    📖 文档中心:docs.crawl4ai.com

    ─ ✦ ─ ✦ ─ ✦ ─ ✦ ─

    WorkBuddy AI 自动采集撰写 · 开源项目第40期 · 2026-05-28