傳統的網頁爬蟲依賴於脆弱的 CSS 選擇器和 XPath 表達式,只要網站更新標記就會失效。LLM Scraper 採取了根本不同的方法:它使用大型語言模型語義化理解頁面內容,並精確提取你所需的結構化 JSON 資料。
這款由 mishushakov 建構的開源工具,填補了非結構化 HTML 與結構化資料管線之間的差距。無需編寫和維護選擇器,只需定義一個型別化的提取架構,LLM 會處理其餘部分。
LLM Scraper 的運作方式
LLM Scraper 支援多種 LLM 供應商,包括 OpenAI、Anthropic 以及透過 Ollama 使用本地模型。你提供 URL 或 HTML 內容以及描述所需資料欄位的 JSON 架構,工具會回傳符合該架構的結構化 JSON 物件。
| 功能 | 描述 |
|---|---|
| 基於架構的提取 | 為任意資料結構定義型別化的 JSON 架構 |
| 多種 LLM 供應商 | OpenAI、Anthropic、Ollama 和自訂端點 |
| 批次處理 | 單一命令爬取多個頁面 |
| Playwright 整合 | 自動處理 JavaScript 渲染的頁面 |
| 重試與錯誤處理 | 內建提取失敗的復原能力 |
與傳統爬蟲的比較
| 方法 | 維護成本 | 準確度 | JavaScript 支援 | 設定時間 |
|---|---|---|---|---|
| CSS 選擇器 | 高(經常失效) | 不穩定 | 需要 Playwright | 中等 |
| XPath | 高(經常失效) | 不穩定 | 需要 Playwright | 中等 |
| Regex 解析 | 非常高 | 低 | 否 | 低 |
| LLM Scraper | 低(語義化) | 高 | 內建 | 低 |
資料提取管線
flowchart LR
A[網頁 URL] --> B[Playwright 瀏覽器]
B --> C[HTML 內容]
C --> D[LLM 處理器]
E[架構定義] --> D
D --> F[結構化 JSON]
F --> G[資料庫]
F --> H[資料管線]
F --> I[分析工具]管線從目標 URL 開始。Playwright 載入頁面(處理 JavaScript 渲染),原始 HTML 連同你的架構一起傳遞給 LLM,然後 LLM 回傳乾淨、結構化的資料,準備好進行後續處理。
主要優勢
LLM Scraper 在傳統工具難以應付的地方表現出色。動態載入內容、使用複雜 JavaScript 框架或頻繁更改版面的頁面,都無需維護即可處理。LLM 理解內容的含義,而不僅僅是其 DOM 中的位置。
如需更多資訊,請造訪官方 GitHub 儲存庫 並查看 LLM Scraper 文件。
常見問題
Q:哪些 LLM 模型與 LLM Scraper 搭配效果最佳? A:GPT-4 和 Claude 3.5 Sonnet 提供最佳的提取準確度,而 Llama 3 等本地模型則提供良好的免費選項。
Q:LLM Scraper 能否處理需要登入的頁面? A:可以,透過 Playwright 的驗證上下文傳遞 Cookie 或 Session Token 即可。
Q:每爬取一個頁面的成本是多少? A:成本取決於 LLM 供應商和頁面大小,使用雲端供應商通常每頁 $0.001-$0.01。
Q:它支援分頁和爬取嗎? A:可以,你可以串聯多個頁面並定義爬取模式來爬取整個網站。
Q:支援哪些輸出格式? A:JSON 是主要輸出格式,但你可以透過後處理將結果導出為 CSV、Parquet 或任何格式。
無程式碼也能輕鬆打造專業LINE官方帳號!一鍵導入模板,讓AI助你行銷加分!