ARTICLE DETAIL

建站实战干货

来自一线的建站与推广经验沉淀,每一条都经过真实交付验证。

Crawl4AI 爬虫使用指南:5 行代码把网页转成 AI 可用的 Markdown

2026/8/29 10:44:09 拓冰建站 浏览量
Crawl4AI 爬虫使用指南:5 行代码把网页转成 AI 可用的 Markdown Crawl4AI 爬虫使用指南5 行代码把网页转成 AI 可用的 Markdown【免费下载链接】crawl4ai Crawl4AI: Open-source LLM Friendly Web Crawler Scraper. Dont be shy, join here: https://discord.gg/jP8KfhDhyN项目地址: https://gitcode.com/GitHub_Trending/craw/crawl4aiCrawl4AI 是一个开源的 LLM 友好型网页爬虫它驱动真实浏览器访问网页把 HTML 直接转换为干净的 Markdown 和结构化 JSON解决原始 HTML 噪音多、动态内容抓不全、直接喂给 AI 效果差的问题。项目概览一句话定位面向 AI 数据管道的网页抓取工具输入 URL输出可直接用于 RAG 的 Markdown、结构化数据和监控接口。维度说明相比传统方案的改进核心能力浏览器渲染、Markdown 生成、CSS/LLM 双通道提取、深度爬取、自适应爬取传统 requests 类工具拿不到 JS 渲染后的内容需手写解析适用场景RAG 知识库构建、AI Agent 数据源、电商与资讯结构化采集、生产级抓取服务Selenium 方案需维护大量等待与选择器代码配置成本高目标用户AI 工程师、数据工程师、需要批量网页数据的开发者无需同时精通 Playwright、解析器和反爬对抗部署方式pip 本地库、Docker API 服务11235 端口、监控面板传统脚本难以水平扩展Docker 版提供连接池与任务队列快速上手Crawl4AI 安装与首次爬取Python 环境安装分三步crawl4ai-doctor会在结束时自检依赖是否齐全pip install -U crawl4ai crawl4ai-setup crawl4ai-doctor最小爬取示例运行后终端直接打印页面转换出的 Markdown 前 500 字符import asyncio from crawl4ai import AsyncWebCrawler async def main(): async with AsyncWebCrawler() as crawler: result await crawler.arun(urlhttps://example.com) print(result.markdown.raw_markdown[:500]) asyncio.run(main())不写本地代码、直接起服务时用 Docker 部署 Crawl4AI 的完整流程是两条命令docker pull unclecode/crawl4ai:latest docker run -d -p 11235:11235 --name crawl4ai --shm-size1g unclecode/crawl4ai:latest启动后访问localhost:11235/dashboard看运行状态/playground可在线调试单次爬取请求API 参数与 Python SDK 的CrawlerRunConfig一一对应。场景实操网页数据获取的三种做法为 RAG 管道准备干净 Markdown。新闻和百科页面普遍携带导航栏、页脚、广告位直接入库会稀释检索质量。关键配置是excluded_tags加剪枝过滤器PruningContentFilter(threshold0.48, threshold_typefixed)按节点信息密度裁掉低价值区块options{ignore_links: True}去掉链接锚文本。预期效果是result.markdown.fit_markdown的长度显著小于raw_markdown留下的正文密度更高。config CrawlerRunConfig( cache_modeCacheMode.BYPASS, excluded_tags[nav, footer, aside, header], markdown_generatorDefaultMarkdownGenerator( content_filterPruningContentFilter(threshold0.48, threshold_typefixed), options{ignore_links: True}, ), )CSS 选择器截取列表区。当只需要页面某个区域如搜索结果列表、文章正文容器时给CrawlerRunConfig传css_selectorarticle .contentMarkdown 只由该选择器命中的节点生成配合exclude_external_linksTrue可过滤外链避免列表页混入第三方站点的链接数据。LLM 驱动的结构化数据提取。页面结构不固定、写选择器维护成本高时用 Pydantic 模型定义字段交给LLMExtractionStrategy按 schema 抽取。llm_config指定供应商如openai/gpt-4o-minischema传Product.model_json_schema()instruction说明抽取范围结果在result.extracted_content中以 JSON 数组返回每条记录与模型字段一一对应。深度功能深度爬取、缓存与反检测的设计点深度爬取三种策略 过滤与评分。入口是deep_crawling模块BFSDeepCrawlStrategy(max_depth3, max_pages50, include_externalFalse)逐层扩展链接DFSDeepCrawlStrategy沿单条路径深入BestFirstCrawlingStrategy按评分器打分排序后优先抓取高分 URL。FilterChain可叠加DomainFilter、URLPatternFilter、ContentTypeFilter拦截无关链接KeywordRelevanceScorer等评分器配合score_threshold做准入控制。适合站点地图探索和目标导向的内容发现。缓存模式与词数阈值。cache_mode有ENABLED、BYPASS、WRITE_ONLY、READ_ONLY、DISABLED五档开启读取时引擎用word_count_threshold比较页面词数内容未变化则直接返回缓存副本省去浏览器启动开销。调试期建议BYPASS稳定运行后再切回ENABLED换取速度。反检测与代理轮换。magicTrue开启一键反检测组合simulate_userTrue注入模拟人类行为的脚本user_agent_moderandom生成随机指纹 UAproxy_config传server/username/password接入代理RoundRobinProxyStrategy支持多代理轮询。目标站点有 Cloudflare 类拦截时再叠加BrowserConfig(use_undetected_browserTrue)使用打补丁的浏览器内核。自适应爬取。AdaptiveCrawler接收自然语言查询按AdaptiveConfig(confidence_threshold0.7, max_depth5, max_pages20, strategystatistical)自主决定下一步访问哪个链接strategy可选statistical、embedding、llm三档置信度低于阈值即停止避免盲目爬全站。避坑与经验现象首次运行报浏览器可执行文件缺失。原因pip 只装 Python 包Playwright 的浏览器二进制需单独下载。对策执行python -m playwright install --with-deps chromium--with-deps顺带装系统库Ubuntu 下可省去手工补依赖。现象第二次爬取返回旧内容页面明明已更新。原因缓存读取命中默认词数校验认为内容未变。对策调试阶段设CacheMode.BYPASS需要强一致时改用DISABLED。现象动态页面抓到的内容比肉眼看到的少。原因HTML 在 JS 渲染完成前就被取走。对策delay_before_return_html增加等待wait_for指定选择器就绪条件加载更多型列表用js_code模拟点击无限滚动页启用 virtual scroll 配置。现象高并发下内存快速上涨、浏览器崩溃。原因每个并发页面占用一个 Chromium 上下文。对策下调AsyncWebCrawler(max_concurrent5)关闭screenshot和媒体提取用CrawlerMonitor观察内存曲线再逐步加压。现象LLM 提取返回空数组或字段缺失。原因instruction描述模糊或页面正文低于word_count_threshold导致内容被过滤。对策细化Field的 description 明确字段来源必要时调低word_count_threshold。延伸与资源官方文档docs/md_v2/core/quickstart.md快速开始、docs/md_v2/api/arun.mdarun 参数参考示例代码docs/examples/quickstart.py综合示例、docs/examples/llm_extraction_openai_pricing.pyLLM 提取模块源码crawl4ai/deep_crawling/深度爬取策略、crawl4ai/adaptive_crawler.py自适应爬取Docker 部署deploy/docker/README.mdAPI 端点、JWT 认证、MCP 接入社区入口项目描述中的 Discord 频道discord.gg/jP8KfhDhyN以上为 Crawl4AI 0.9.0 的主线能力版本迭代较快具体参数以仓库内 CHANGELOG.md 为准。【免费下载链接】crawl4ai Crawl4AI: Open-source LLM Friendly Web Crawler Scraper. Dont be shy, join here: https://discord.gg/jP8KfhDhyN项目地址: https://gitcode.com/GitHub_Trending/craw/crawl4ai创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考