當前位置: 妍妍網 > 碼農

4.2K Star!Crawl4AI:幾行程式碼就可實作強大的網頁爬蟲!

2024-09-29碼農

在現代 AI 研究中,尤其是大型語言模型(LLM)訓練和套用中,數據的獲取與處理是一個關鍵環節。

為了幫助開發者更高效地抓取和整理網路數據, Crawl4AI 誕生了。這是一個專為 LLM 最佳化的開源網頁爬蟲工具,其便捷的使用方式與強大的功能,使得網頁數據采集變得前所未有的輕松。

Crawl4AI 是一款基於 LLM(大型語言模型)的開源網頁爬蟲工具,它的設計初衷是為開發者提供一個簡單易用、功能強大的數據抓取解決方案,特別是為了滿足 AI 研究中的數據采集需求。

透過僅需幾行程式碼,使用者便能實作高效的網頁爬取和數據提取。

核心功能

  • 開源且免費 :Crawl4AI 完全開源,開發人員可以自由使用和修改,無需擔心成本問題。

  • AI 驅動的自動化數據提取 :透過 LLM,Crawl4AI 能夠智慧化地辨識和解析網頁元素,自動進行數據提取,極大節省開發者的時間與精力。

  • 結構化數據輸出 :支持將提取到的數據轉換為 JSON、Markdown 等結構化格式,方便後續的分析和處理,確保數據能夠無縫整合到 AI 模型訓練中。

  • 多功能支持/多URL抓取 :支持捲動頁面、抓取多個 URL、提取媒體標簽(如圖片、視訊、音訊)、後設資料、外部/內部連結以及螢幕截圖等。

  • 高度客製化 :支持使用者自訂認證、請求頭資訊、爬取前頁面修改、使用者代理以及 JavaScript 指令碼執行,確保爬蟲可以針對不同網頁做出靈活調整。

  • 高級提取策略 :支持多種提取策略,包括基於主題、正規表式、句子的分塊策略,以及利用 LLM 或余弦聚類的高級提取策略。

  • 如何使用?

    安裝

    使用 pip 安裝:

    pip install crawl4ai

    使用 Docker 安裝:

    構建 Docker 映像並執行

    docker build -t crawl4ai .
    docker run -d -p 8000:80 crawl4ai

    從 Docker Hub 直接執行

    docker pull unclecode/crawl4ai:latest
    docker run -d -p 8000:80 unclecode/crawl4ai:latest

    使用

    Crawl4AI 的使用非常簡單,僅需幾行程式碼就能實作強大的功能。以下是使用 Crawl4AI 進行網頁數據抓取的範例:

    import asyncio
    from crawl4ai import AsyncWebCrawler
    asyncdefmain():
    asyncwith AsyncWebCrawler(verbose=Trueas 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


    如果本文對您有幫助,也請幫忙點個 贊👍 + 在看 哈!❤️

    在看你就贊贊我!