前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >4.2K Star!Crawl4AI:几行代码就可实现强大的网页爬虫!

4.2K Star!Crawl4AI:几行代码就可实现强大的网页爬虫!

作者头像
Python兴趣圈
发布2024-09-29 10:56:37
8950
发布2024-09-29 10:56:37
举报
文章被收录于专栏:翩翩白衣少年

在现代 AI 研究中,尤其是大型语言模型(LLM)训练和应用中,数据的获取与处理是一个关键环节。

为了帮助开发者更高效地抓取和整理网络数据,Crawl4AI 诞生了。这是一个专为 LLM 优化的开源网页爬虫工具,其便捷的使用方式与强大的功能,使得网页数据采集变得前所未有的轻松。

Crawl4AI 是一款基于 LLM(大型语言模型)的开源网页爬虫工具,它的设计初衷是为开发者提供一个简单易用、功能强大的数据抓取解决方案,特别是为了满足 AI 研究中的数据采集需求。

通过仅需几行代码,用户便能实现高效的网页爬取和数据提取。

核心功能

  • 开源且免费:Crawl4AI 完全开源,开发人员可以自由使用和修改,无需担心成本问题。
  • AI 驱动的自动化数据提取:通过 LLM,Crawl4AI 能够智能化地识别和解析网页元素,自动进行数据提取,极大节省开发者的时间与精力。
  • 结构化数据输出:支持将提取到的数据转换为 JSON、Markdown 等结构化格式,方便后续的分析和处理,确保数据能够无缝集成到 AI 模型训练中。
  • 多功能支持/多URL抓取:支持滚动页面、抓取多个 URL、提取媒体标签(如图片、视频、音频)、元数据、外部/内部链接以及屏幕截图等。
  • 高度定制化:支持用户自定义认证、请求头信息、爬取前页面修改、用户代理以及 JavaScript 脚本执行,确保爬虫可以针对不同网页做出灵活调整。
  • 高级提取策略:支持多种提取策略,包括基于主题、正则表达式、句子的分块策略,以及利用 LLM 或余弦聚类的高级提取策略。

如何使用?

安装

使用 pip 安装:

代码语言:javascript
复制
pip install crawl4ai

使用 Docker 安装:

构建 Docker 镜像并运行

代码语言:javascript
复制
docker build -t crawl4ai .
docker run -d -p 8000:80 crawl4ai

从 Docker Hub 直接运行

代码语言:javascript
复制
docker pull unclecode/crawl4ai:latest
docker run -d -p 8000:80 unclecode/crawl4ai:latest
使用

Crawl4AI 的使用非常简单,仅需几行代码就能实现强大的功能。以下是使用 Crawl4AI 进行网页数据抓取的示例:

代码语言:javascript
复制
import asyncio
from crawl4ai import AsyncWebCrawler

async def main():
    async with AsyncWebCrawler(verbose=True) as crawler:
        js_code = ["const loadMoreButton = Array.from(document.querySelectorAll('button')).find(button => button.textContent.includes('Load More')); loadMoreButton && loadMoreButton.click();"]
        result = await crawler.arun(
            url="https://www.nbcnews.com/business",
            js_code=js_code,
            css_selector="article.tease-card",
            bypass_cache=True
        )
        print(result.extracted_content)

if __name__ == "__main__":
    asyncio.run(main())

使用场景

Crawl4AI 适合以下场景:

  • AI 研究:需要大量网页数据用于语言模型训练的研究人员和开发者。
  • 数据科学:需要高效从网页中提取数据进行分析的科学家或分析师。
  • 开发者:希望在应用程序中实现网页数据抓取和自动化信息采集的开发者。

总结

Crawl4AI 是一个功能强大且易用的网页爬虫工具,它为大型语言模型和 AI 应用量身打造,提供了丰富的功能和灵活的配置选项。

从结构化输出到多种提取策略,Crawl4AI 为开发者在数据抓取领域带来了极大的便利。

GitHub:https://github.com/unclecode/crawl4ai

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2024-09-28,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 Python兴趣圈 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 核心功能
  • 如何使用?
    • 安装
      • 使用
      • 使用场景
      • 总结
      相关产品与服务
      容器服务
      腾讯云容器服务(Tencent Kubernetes Engine, TKE)基于原生 kubernetes 提供以容器为核心的、高度可扩展的高性能容器管理服务,覆盖 Serverless、边缘计算、分布式云等多种业务部署场景,业内首创单个集群兼容多种计算节点的容器资源管理模式。同时产品作为云原生 Finops 领先布道者,主导开源项目Crane,全面助力客户实现资源优化、成本控制。
      领券
      问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档