模型 / 資料集
itsOwen/CyberScraper-2077 avatar
itsOwen/CyberScraper-2077

CyberScraper 2077:讓 LLM 決定抓什麼,但別忘了它仍是個瀏覽器工具

A Powerful web scraper powered by LLM | OpenAI, Gemini & Ollama

3,259 個 Star355 個 ForkPythonMIT
GitHub

秒懂

它是什麼?
CyberScraper 2077 以 OpenAI、Gemini 或 Ollama 驅動網頁內容抽取,提供 Streamlit 介面與多種匯出格式。本文拆解它的運作方式、安裝路徑,以及它在反偵測與模型依賴上的真實界線。
適合誰用?
CyberScraper 2077 適合想快速把網頁內容轉成結構化資料、且願意接受 LLM API 成本與不確定性的開發者或資料分析師。它不適合需要精確控制每個請求細節、或完全依賴開源模型而無力微調提示詞的人。
可以商用嗎?
可以。MIT 是寬鬆授權:你可以使用、修改並販售以它為基礎的軟體,只需保留著作權與授權聲明。
還在維護嗎?
有在維護。儲存庫最近一次提交在 5 天前。
用什麼語言寫的?
主要是 Python(依據 GitHub 的語言統計)。

以上回答依據專案的 GitHub 資料(最近同步於 2026年9月15日)與我們的分析,不構成法律意見。

開源專案深度解析

它解決的問題:把「抓取」變成「問模型」

傳統爬蟲需要你為每個網站撰寫 CSS 選擇器或 XPath,網站改版就壞。CyberScraper 2077 換了一條路:它把抽取任務交給 LLM,讓模型理解頁面內容並回傳你要的欄位。這對那些結構多變、或你不想花時間維護選擇器的網站特別有用。目標使用者是資料分析師、偶爾需要抓資料的工程師,以及不想碰底層 HTTP 細節的人。它不是給需要高吞吐量、低延遲的生產級爬蟲團隊用的,因為每次抽取都要經過 LLM 推論,成本與速度都與模型掛勾。README 自己就提醒,開源模型需要好的系統效能,否則資料產生的速度會受影響。換句話說,這工具把過去寫解析邏輯的時間,轉移到寫好提示詞與準備算力上。

實際機制:從 URL 到結構化輸出的流程

根據 README 的描述,CyberScraper 2077 的運作核心是先由 Playwright 載入網頁,然後把頁面內容送給所選的 LLM,由模型判斷哪些資料值得抽取,最後輸出成 JSON、CSV、HTML、SQL 或 Excel。這裡有個關鍵設計:它支援內容型與查詢型的快取,分別用 LRU cache 與自訂字典實作,目的是減少重複的 API 呼叫。這代表如果你對同一個 URL 問同樣的問題,第二次不會再花一次 API 費用。但快取的有效性取決於頁面是否變動,若網站內容頻繁更新,你可能會拿到舊資料。另外,它有所謂的「Stealth Mode」與「Current Browser」功能,後者會使用你本機的瀏覽器實例,README 宣稱能繞過 99% 的機器人偵測,但也警告只在必要時使用。這暗示該模式可能改變你的瀏覽器設定或留下痕跡,只是文件沒有細說。

安裝與啟動:Python、Playwright 與環境變數

安裝路徑相當直接。先確認 Python 3.10 以上,然後依序執行:git clone、建立虛擬環境、pip install -r requirements.txt、再跑 playwright install 下載瀏覽器。之後你需要設定 API 金鑰,OpenAI 用 OPENAI_API_KEY,Gemini 用 GOOGLE_API_KEY。若想接 LiteLLM proxy,則要設定 LITELLM_API_KEY、LITELLM_BASE_URL(預設 http://localhost:4000/v1)與 LITELLM_MODELS,模型會以 litellm:<model> 的形式出現在側邊欄。Ollama 的使用者則需先安裝 ollama、下載模型(例如 ollama pull llama3.1),之後才能選用。Docker 用戶可以跳過本機安裝,直接 docker build -t cyberscraper-2077 . 然後 docker run -p 8501:8501 -e OPENAI_API_KEY="..." -e GOOGLE_API_KEY="..." cyberscraper-2077。要注意,README 對 Windows 使用者建議直接採用 Docker,因為作者表明不會維護 Windows 原生版本。

依賴 LLM 的代價:指令遵循能力決定一切

這個工具的好壞,幾乎完全取決於你選的模型能不能聽懂你的抽取指令。README 明說作者只推薦 OpenAI 與 Gemini API,因為這些模型在遵循指令上表現良好。對開源模型,作者建議要有好的硬體,而且你可能需要微調提示詞、加上額外過濾器。這不是一個可以「裝好就忘」的工具。如果你用 llama3.1 這類模型,輸出格式可能不穩定,你需要自己寫後處理來確保 JSON 結構正確。此外,LLM 的推論延遲會直接反映在抓取速度上,即使有 async 操作,瓶頸仍在模型回應時間。若你的任務是每天抓上千個頁面,API 成本會快速累積,快取只能緩解重複請求,無法解決首次抓取的花費。

限制與失敗模式:captcha 繞過、Docker 與 .onion

README 提到幾個明確的限制。第一,captcha 繞過功能是透過在 URL 結尾加上 -captcha 來觸發,但「目前僅原生支援,不適用於 Docker」。這是個不小的限制,因為 Docker 是 Windows 使用者的主要安裝方式,等於這群用戶無法使用該功能。第二,.onion 網站需要 Tor 網路支援,但 README 沒有詳細說明 Tor 是如何整合的,只說有自動路由與安全功能。若你的目標是暗網資料,你需要自己確認 Tor 服務是否已安裝與設定。第三,「Navigate through the Pages」功能仍標為 BETA,代表跨頁面抓取可能不穩定。若你的網站需要登入後才能看到資料,或使用大量 JavaScript 動態渲染,Playwright 可以載入,但 LLM 是否能正確解析仍需測試。最後,代理贊助商的存在暗示真實世界抓取常需要 IP 輪換,但工具本身是否內建代理管理,README 並未說明。

替代方案:選擇器工具與其他 LLM 爬蟲的差異

最直接的替代方案是傳統的 Scrapy 或 BeautifulSoup 搭配 Requests。這些工具不依賴 LLM,抓取速度快、成本低,而且你完全控制請求標頭與解析邏輯。但它們需要你手動寫選擇器,且面對網站改版時容易失效。另一類替代是像 Firecrawl 或 ScrapeGraphAI 這類同樣用 LLM 的服務,但 CyberScraper 2077 的差異在於它提供 Streamlit 圖形介面,讓非工程師也能操作,而且支援多種 LLM 後端,包括本機的 Ollama。如果你需要的是開源且可自行架設的 LLM 爬蟲,CyberScraper 2077 比 Firecrawl(通常以 SaaS 形式提供)更符合自託管需求。但若你只需要簡單的 API 呼叫,不想要 GUI,那麼直接寫 Python 呼叫 OpenAI 的 function calling 可能更輕量。選擇的關鍵在於:你願意為「不用寫選擇器」付出多少 API 成本與不確定性。

維護與授權:MIT 下的實際考量

專案採用 MIT 授權,這代表你可以自由修改、商用,甚至閉源,只要保留版權聲明。這是相當寬鬆的條件,對企業採用門檻低。但維護狀況需要你自己判斷:README 最後更新於 2026 年 9 月,但沒有提供任何 release 標籤,這表示你可能需要直接追蹤 main 分支的變動。沒有版本號意味著升級時無法依賴 semver 的相容性保證,你必須自行測試每次 pull 是否破壞功能。此外,README 明確表示作者不會維護 Windows 原生版本,這對 Windows 團隊是一個長期的維護成本,因為你被迫使用 Docker,而 Docker 版本又缺少 captcha 繞過功能。若你要長期依賴此工具,建議 fork 一份並追蹤上游變動,或者準備好自行修補 bug 的能力。

編輯結論

CyberScraper 2077 適合想快速把網頁內容轉成結構化資料、且願意接受 LLM API 成本與不確定性的開發者或資料分析師。它不適合需要精確控制每個請求細節、或完全依賴開源模型而無力微調提示詞的人。若你的目標網站有嚴格的反爬機制,或你打算在 Docker 環境使用 captcha 繞過功能,請先確認該功能在容器外的運作方式,因為 README 明說它目前僅原生支援。開始前,你應該驗證三件事:你的 Python 版本是否為 3.10 以上、是否已安裝 playwright 的瀏覽器二進位檔,以及你選擇的 LLM 是否真的能穩定遵循你的抽取指令。若你只想抓靜態頁面,傳統選擇器工具可能更省錢。

官方來源

  1. Issues
  2. itsOwen/CyberScraper-2077 on GitHub
  3. License: MIT
  4. README
社群筆記

社群筆記