Craigslist 看起來彷彿自 2003 年以來就沒變過,但那些純文字刊登裡藏著的資料其實非常有價值。它每月有 約 1.27 億次造訪,而且每月還有 數千萬則新刊登,至今仍是美國最大的分類廣告平台之一——而且沒有可供串接的公開 API。
我在 Thunderbit 做自動化工具已經很多年了,銷售、營運和房地產團隊最常跟我說的一句話就是:「我需要把 Craigslist 資料整理到試算表裡,但我不想花三個小時複製貼上。」問題在於,大多數「最佳 Craigslist 爬蟲」指南不是過時了,就是略過最難的部分(像是反機器人防護),不然就是只列工具,卻沒有真正比較。
所以我整理了這份指南,收錄 10 款到 2026 年仍然真的可用的工具——從免程式碼 Chrome 擴充功能、企業級代理平台,到開源 Python 函式庫都有。不管您是從沒寫過一行程式碼的商務使用者,還是夢裡都在寫 Python 的開發者,這裡都能找到適合您的工具。
為什麼 2026 年還要抓取 Craigslist?商務團隊的主要應用場景
Craigslist 也許看起來很老派,但這正是它迷人的地方,也是它的價值所在。它在全球分類網站中仍排名 第 3,而且其官方目錄涵蓋 美國與屬地共 416 個站點。這代表有大量只存在於在地市場的庫存資訊,別處根本找不到。
我看到團隊一次又一次回頭使用的場景包括:
- 開發潛在客戶: 服務與零工類貼文常包含業務描述、地理位置,以及 Craigslist 的轉接聯絡路徑——已足夠讓銷售團隊建立在地名單。
- 房地產監測: 住房頁面會顯示租金、社區、臥室/浴室數量、坪數與時間戳,對租金比較與空屋追蹤非常實用。
- 競爭性定價: 待售刊登會顯示標題、價格、狀況與地點,對轉售或套利研究來說很有價值。
- 招募與勞動市場監測: 工作與零工分類會呈現薪資、雇用類型與職位描述,適合做在地人才市場掃描。
- 跨區域市場分析: 由於 Craigslist 以子網域與城市區分,您可以按區域逐一查詢價格、量體或類別組合。
- 工作流程自動化: 很多使用者只是想把 Craigslist 資料流向 CSV、Google Sheets、Airtable 或 CRM——而不需要手動瀏覽。
有位使用者回報,原本每天要花 60–90 分鐘 的 Craigslist 抓取,在自動化後縮短到大約 5 分鐘。這種節省時間的效果,累積起來非常驚人。
用 AI 抓取 Craigslist 資料 Get Started Free
我們如何挑選最佳 Craigslist 爬蟲:評估標準
不是所有 Craigslist 爬蟲都一樣好,而「最佳」工具其實很看使用者身分和需求。我從六個面向評估每一款工具:
- 設定難易度 — 是對新手友善(免程式碼),還是需要開發者?
- Craigslist 反機器人處理 — 是否內建代理輪替、CAPTCHA 處理或瀏覽器指紋偽裝?
- 價格方案 — 免費、免費增值、付費,還是企業版?
- 資料匯出選項 — CSV、Excel、Google Sheets、Airtable、Notion、JSON、資料庫?
- 跨區域支援 — 能否抓取全部 416 個 Craigslist 美國站點,還是一次只能處理一個城市?
- 維護成本 — Craigslist 一改版面工具就壞掉,還是能自動適應?
我找到的競品文章,沒有一篇像這樣用一致標準做並列比較——如果您也厭倦了含糊的「前 10 名」清單,那這份就是給您的。
一眼看懂:10 款最佳 Craigslist 爬蟲
在深入介紹每個工具之前,先看總覽比較表。我把它們分成三條路線:給商務使用者的免程式碼工具、給大規模需求的企業平台,以及給開發者的開源函式庫。
| 工具 | 類型 | 免費方案? | 代理 / 反機器人支援 | CAPTCHA 處理 | 匯出格式 | 最適合 |
|---|---|---|---|---|---|---|
| Thunderbit | 免程式碼 Chrome 擴充功能 | 有(每月 6 頁) | 瀏覽器模式(中等量抓取不需要代理) | 不適用(瀏覽器工作階段) | Excel、Sheets、Airtable、Notion、CSV、JSON | 非技術型商務使用者 |
| Bright Data | 企業級爬蟲 + 代理 + 資料集 | 試用 | 代管解封鎖、代理、重試、渲染 | 有(自動解決) | JSON、NDJSON、CSV、Parquet、XLSX、API | 企業級資料蒐集 |
| Oxylabs | API + 代理堆疊 | 試用 | 代管解封鎖、住宅 / ISP 代理 | 有 | HTML、截圖、API 輸出 | 需要企業級基礎架構的開發者 |
| Apify | 雲端 Actor 市集 | 有(每月 $5 額度) | 代理輪替(取決於 Actor) | 部分支援 / 依 Actor 而定 | JSON、CSV、XML、Excel、JSONL | 彈性的低程式碼雲端自動化 |
| ParseHub | 免程式碼視覺化爬蟲 | 有 | 付費代理輪替、雲端執行 | 不是核心功能 | CSV、JSON、API/S3/Dropbox(付費) | 預算型免程式碼使用者 |
| Phantombuster | 雲端自動化平台 | 有(有限制) | 有代理支援 | 額度 / 工作流程式 | CSV、JSON(付費) | 跨平台銷售自動化 |
| Scrapy | 開源 Python 爬蟲框架 | 免費(OSS) | 自備代理 / 中介軟體 | 無 | JSON、JSONL、CSV、XML、資料庫 | 生產級爬蟲 |
| Playwright | 開源瀏覽器自動化 | 免費(OSS) | 自備瀏覽器 / 代理 | 無 | 自訂匯出 | 瀏覽器層級控制 |
| Selenium | 開源瀏覽器自動化 | 免費(OSS) | 自備瀏覽器 / 代理 | 無 | 自訂匯出 | 傳統多語言技術堆疊 |
| BeautifulSoup | 開源 HTML 解析器 | 免費(OSS) | 本身沒有 | 無 | 自訂匯出 | 輕量解析 |
這裡清楚可分成三條路:
- 免程式碼工具(Thunderbit、ParseHub、Phantombuster)適合想要資料、但不想碰工程細節的商務使用者。
- 企業平台(Bright Data、Oxylabs、Apify)適合需要規模、反機器人基礎架構與代管交付的團隊。
- 開源開發者工具(Scrapy、Playwright、Selenium、BeautifulSoup)則提供最高控制權——代價是設定、維護與代理管理。
接下來進入詳細評測。
1. Thunderbit
Thunderbit 是一款 AI 驅動的 Chrome 擴充功能,專為希望從任何網站取得結構化資料的人打造——包括 Craigslist——而且不需要寫程式或設定代理。
這裡我有點偏心(畢竟是我們做的),但我把 Thunderbit 放在第一位的原因,是它正好解決了 Craigslist 抓取對非技術使用者造成的痛點:不同分類的版面會變、詳細頁需要補資料,而且 CSS 選擇器一改就壞掉的情況很常見。
在 Craigslist 上的運作方式:
- 安裝 Thunderbit Chrome 擴充功能 並開啟任一 Craigslist 刊登頁面(例如您所在城市的公寓頁)。
- 點擊 「AI 建議欄位」 —— Thunderbit 的 AI 會讀取頁面,並針對實際內容提出欄位。住房分類會得到標題、價格、坪數、臥室、地點、刊登日期、連結;工作分類則會得到標題、薪資、職務類型等。不需要手動設定選擇器。
- 點擊 「抓取」,即可看到資料填入結構化表格。
- 處理分頁——Thunderbit 支援 Craigslist 的點擊式分頁。
- 使用 「抓取子頁面」 逐一拜訪每個刊登,擷取僅在詳細頁才有的欄位:完整描述、所有圖片、內嵌聯絡資訊等。
- 匯出到 Google Sheets、Excel、Airtable、Notion 或 CSV——免費。
主要功能:
- AI 驅動欄位偵測: 可自動適應不同 Craigslist 分類——住房會有坪數 / 臥室欄位,工作會有薪資 / 職務類型,待售會有狀況 / 價格。完全不需要手動寫 CSS。
- 子頁面抓取: 先抓結果頁,再逐一拜訪每筆刊登,把詳細頁欄位抓回來(完整描述、圖片、聯絡資訊)。
- 以瀏覽器為基礎的抓取模式: 在您自己的 Chrome 工作階段中執行,中等量使用不需要代理。光是這點就能省下很大一塊成本與複雜度。
- 零維護: AI 每次都會重新讀取頁面。Craigslist 就算改版面(而且真的會),您的爬蟲也不會壞。
- 免費匯出: Excel、Google Sheets、Airtable、Notion、CSV、JSON——匯出沒有付費牆。
價格: 免費方案(每月 6 頁)、免費試用(10 頁)、付費方案 可處理更高用量。
最適合: 從 Craigslist 服務 / 零工分類抓潛在客戶的銷售團隊、監測租金價格的房地產團隊、需要結構化 Craigslist 資料但沒有開發支援的營運團隊,以及任何想一步完成抓取、標記與匯出的使用者。
試用 Thunderbit 進行 Craigslist 抓取
2. Bright Data
Bright Data 是企業級的重量型方案。它是這份名單中唯一同時擁有專屬 Craigslist Scraper 產品頁和 Craigslist Dataset 市集的平台。
如果您需要每天跨美國各區抓取數千筆 Craigslist 刊登,Bright Data 就是為這種規模而生。它的 Web Unlocker 可處理 IP、重試、渲染與封鎖,包括 預設自動解決 CAPTCHA。Web Scraper IDE 讓您建立自訂的 Craigslist 蒐集流程,而且可以程式化地遍歷全部 416 個地區 URL。
主要功能:
- 大型住宅代理網路(數百萬個 IP)
- 內建 CAPTCHA 解決與反機器人繞過
- Craigslist 專用爬蟲與資料集產品
- 匯出:JSON、NDJSON、CSV、Parquet、XLSX、API 交付、webhook
價格: Craigslist 爬蟲採 每 1,000 頁載入 $0.5 的用量計費,像 38 萬頁載入 $499 這類方案也有。住宅代理起價為 每 GB $4 的用量計費。另有 1 週、1,000 次請求的免費試用。
最適合: 需要高量、跨區域 Craigslist 蒐集,並要求穩定運作與專屬支援的企業團隊。預算有限的小團隊可以考慮其他選項。
3. Oxylabs
Oxylabs 是高階代理與抓取基礎架構供應商,提供專屬 Craigslist Scraper API 與 Craigslist proxies page。
相較於 Bright Data 的一站式做法,Oxylabs 更偏向開發者導向。它的 Web Scraper API 與 Web Unblocker 支援 JS 渲染、重試、工作階段處理、指紋生成與更廣泛的反機器人處理。Craigslist Scraper API 的免費試用可達 2,000 筆結果。
主要功能:
- 住宅與 ISP 代理池(住宅代理起價 每 GB $6,ISP 代理起價 每 IP $0.60)
- 具備自動指紋與工作階段管理的 Web Unblocker
- Craigslist 專用 API 端點
- 提供 7 天免費試用
價格: 「其他網站」Scraper API 起價約為 無 JS 每 1,000 筆結果 $0.15、有 JS 每 1,000 筆結果 $0.35。Web Unblocker 微型方案約從 每月 $75 起。大規模住宅代理的價格在 1TB 時可達每 GB $0.50。
最適合: 想要代管代理基礎架構與 API 流程,持續進行 Craigslist 抓取的開發團隊。已在其他專案使用 Oxylabs 代理的團隊,會很容易把 Craigslist 加進來。
4. Apify
Apify 是一個雲端網頁抓取與自動化平台,內建市集可使用預先製作好的「Actors」——也就是不用寫程式就能執行的爬蟲範本。
Apify 上的 Craigslist 生態很有意思:有多個社群維護的 Craigslist actor,而且品質差異很大。ivanvs/craigslist-scraper actor 總使用者數有 829、評分 5.0;而 automation-lab/craigslist-scraper 則只有 44 位使用者、評分 1.0。品質不均,因此在正式採用前最好先測試。
主要功能:
- 有多個 Craigslist actor 可用(部分可抓取 每頁約 120 筆刊登,並內建延遲)
- 雲端執行、排程執行、API 存取、webhook 整合
- 代理輪替 可用
- 匯出:JSON、CSV、XML、Excel、JSONL
價格: 免費方案含每月 $5 額度,付費方案約從每月 $49 起。按運算量計費在高用量下可能會飆升——請留意您的 CU 消耗。
最適合: 想要雲端託管方案、又不想管理基礎架構的團隊;習慣低程式碼設定的使用者;以及需要排程、週期性 Craigslist 抓取的團隊。
5. ParseHub
ParseHub 是一款桌面式視覺化網頁抓取工具,您可以直接點選頁面元素來定義要擷取的內容。
在 ParseHub 中設定 Craigslist 抓取時,您會點選刊登標題、價格與連結,教工具該抓哪些欄位。它透過 AJAX 點擊迴圈處理分頁,付費方案也支援雲端執行。免費方案最多可建立 5 個專案,對小規模 Craigslist 工作來說還算夠用。
主要功能:
- 視覺化點選式工作流程建構器
- 分頁與動態內容處理
- 付費方案支援雲端執行與排程
- 匯出:CSV、Excel、JSON
價格: 免費方案(5 個專案),付費方案約從每月 $189 起,可處理更多頁面與排程執行。
限制: 大規模抓取時可能很慢、免費方案的排程執行有限,最重要的是——它是基於 CSS 選擇器,因此 Craigslist 一改版面就得手動維護。
最適合: 想要視覺化、免程式碼工具,但不需要 AI 欄位偵測的個人使用者或小型團隊。
6. Phantombuster
Phantombuster 是一個雲端自動化平台,原本因 LinkedIn 與社群媒體抓取而廣為人知。它不是專為 Craigslist 設計的工具,但其 Web Element Extractor 可使用 CSS 選擇器抓取公開頁面。
在 Phantombuster 裡設定 Craigslist 抓取,比專用工具要花更多工夫——您需要指定選擇器、建立工作流程,並設定排程。不過如果您本來就在用 Phantombuster 做 LinkedIn 或社群媒體潛在客戶開發,把 Craigslist 納入流程就很直接。
主要功能:
- 預建自動化範本與雲端執行
- 排程與 CRM 整合
- 提供代理支援與 CAPTCHA 解決額度
- 匯出:付費方案可輸出 CSV、JSON(免費方案上限 10 列)
價格: 免費方案含 5 個槽位、每月 2 小時、10 列匯出上限。付費年度方案約從每月 $56 起,按年計費。
最適合: 已在使用 Phantombuster 做跨平台潛在客戶開發,並想把 Craigslist 加進既有流程的銷售團隊。
7. Scrapy
Scrapy 是最受歡迎的開源 Python 網頁抓取框架,也是希望對 Craigslist 爬取擁有最大控制權的開發團隊最直覺的選擇。
最新穩定版是 2.15.0(2026 年 4 月 9 日)。Scrapy 支援跨區域爬取(可遍歷所有地區 URL)、內建請求排程與節流、下載器中介軟體 可做代理輪替,以及 feed 匯出 到 CSV、JSON、JSONL、XML 與資料庫流程。當您需要瀏覽器層級渲染時,scrapy-playwright 外掛也能補上。
主要功能:
- 高度可自訂、可用於生產環境的爬蟲
- 中介軟體支援代理、重試、Cookie 與 user-agent 輪替
- Feed 匯出:JSON、JSONL、CSV、XML、資料庫流程
- 免費且開源
隱藏成本: Scrapy 本身是免費的,但若要在 Craigslist 上大規模運作,會需要代理訂閱(每月 $50–500+)、主機 / 伺服器成本,以及 Craigslist HTML 結構變動時的持續維護。
最適合: 有 Python 經驗、需要最大彈性、已有代理基礎架構,並想做大量跨區域 Craigslist 爬取的開發團隊。
8. Playwright
Playwright 是 Microsoft 推出的現代瀏覽器自動化函式庫,可程式化控制 Chromium、Firefox 與 WebKit。目前版本更新仍很活躍——v1.59.1 於 2026 年 4 月 1 日發布。
在開發者社群中,針對 Craigslist 抓取,Playwright 越來越常被推薦取代 Selenium。它更快、更穩定,而且透過像 playwright-extra 這類社群外掛,有更好的反偵測隱匿性。它支援無頭與有頭模式、自動等待元素、網路攔截,以及截圖 / PDF 擷取。
主要功能:
- 支援 Python、JavaScript/TypeScript、Java 與 .NET
- 無頭與有頭瀏覽器模式
- 自動等待元素、網路攔截
- 免費且開源
Craigslist 優勢: Playwright 比直接使用 HTTP 請求更能模擬真實使用者行為,因此降低被封鎖的風險。Reddit 上的社群意見也一貫更偏好新專案使用 Playwright,而非 Selenium。
隱藏成本: 和 Scrapy 一樣——代理成本、主機成本,以及選擇器失效後的維護成本。
最適合: 需要細緻瀏覽器控制、要處理 JavaScript 渲染內容的爬蟲開發團隊,以及任何偏好 Selenium 現代替代方案的人。
9. Selenium
Selenium 是歷史悠久、廣泛使用的瀏覽器自動化框架。最新版本是 4.43.0(2026 年 4 月 10 日),並持續擴充 BiDi 與網路控制能力。
Selenium 支援多種語言(Python、Java、C#、JavaScript)與所有主流瀏覽器。它可以模擬完整瀏覽器工作階段、在需要時處理登入,並滾動頁面。但與 Playwright 相比,它更慢、程式更冗長,而且若沒有額外的隱匿函式庫(如 undetected-chromedriver),更容易被判定為機器人。
主要功能:
- 多語言支援(Python、Java、C#、JavaScript)
- 完整瀏覽器工作階段模擬
- 生態成熟、文件充足
- 免費且開源
限制: 2026 年的社群趨勢對綠地專案更偏向 Playwright。有篇 Reddit 討論指出,即使「也使用了住宅代理」,Cloudflare 仍然能偵測到 Selenium——原生隱匿能力較弱。
最適合: 已深度投資 Selenium、不想遷移的開發團隊;需要多語言支援(Java、C#)的專案;以及傳統爬取架構。
10. BeautifulSoup
BeautifulSoup 是一個輕量級 Python 函式庫,用來解析 HTML 與 XML。目前 PyPI 版本是 4.14.3(2025 年 11 月 30 日)。
一個很重要的說明:BeautifulSoup 是解析器,不是完整爬蟲。它不會自己抓取網頁,也不處理瀏覽器自動化。您會把它和 requests 函式庫搭配,用來做 HTTP 抓取,再解析您提供的 HTML。這讓它成為開發者最簡單的入門選項,但功能也最有限。
主要功能:
- 極易上手——只需很少程式碼
- 適合小規模或一次性的 Craigslist 抓取
- 免費且開源
限制: 沒有內建分頁處理、沒有 JavaScript 渲染、沒有代理輪替——全部都得手動加上。如果 Craigslist 改變 HTML 結構,您的選擇器就會壞掉,得自己修。
最適合: 想用最少設定嘗試 Craigslist 抓取的 Python 初學者;從單一分類或地區做一次性資料擷取的情境;以及只需要輕量解析器的開發者。
Craigslist 防封鎖手冊:代理、速率限制,以及哪些行為會被封鎖
這一段是大多數 Craigslist 抓取指南會跳過的,但它其實最重要。Scraperly 2026 年 4 月的測試 將 Craigslist 列為 3/5 難度 目標,原因包括自訂 CAPTCHA、速率限制與 IP 封鎖。Bright Data 的教學 則建議使用 Web Unlocker 或基於 Playwright 的 Scraping Browser,而不是直接用純 HTTP。Oxylabs 的代理頁面 也指出 Craigslist 能偵測代理,並且住宅代理是最佳選擇。
真正有效的方法如下:
| 策略 | 在 Craigslist 上的效果 | 成本 | 複雜度 |
|---|---|---|---|
| 住宅代理 | ✅ 高 | $$(每 GB $4–6) | 中 |
| ISP 代理 | ✅ 高 | $(每 IP $0.60–0.80) | 中 |
| 資料中心代理 | ⚠️ 低(常被封鎖) | $(每 IP $0.20–0.40) | 低 |
| 基於瀏覽器的抓取(自有工作階段) | ✅ 中高 | 免費 | 低 |
| 速率限制 + 隨機延遲 | ✅ 必要基線 | 免費 | 低 |
可操作建議:
- 請求延遲: 每次請求至少間隔 2–5 秒。Scraperly 建議每個 IP 維持約每分鐘 5–10 次請求,並在 20–30 次請求後輪替。
- 工作階段輪替: 輪換 user-agent 與瀏覽器指紋。可預測的爬取模式很快就會被抓到。
- 避免資料中心代理: 雖然便宜,但在 Craigslist 很快就會被封。
- 中等量抓取時,基於瀏覽器的抓取可完全避開代理問題。 Thunderbit 的瀏覽器模式直接在您自己的 Chrome 工作階段中執行——不用設定代理、沒有 IP 輪替、也不用額外成本。對大多數只抓幾百筆刊登的商務使用者來說,這已經綽綽有餘。
還有一個多數人忽略的維護面向:當 Craigslist 改變 CSS(而且它確實會定期改)時,所有基於 CSS 選擇器的爬蟲都會壞掉。您必須檢查頁面、找出新選擇器、更新程式碼,然後重新測試。像 Thunderbit 這種 AI 驅動工具則能完全避開這個問題——AI 每次都會重新讀取頁面結構,所以版面變動不會打亂您的工作流程。
程式碼 vs. 免程式碼:兩種完整的 Craigslist 抓取教學
我知道這篇文章的讀者大致可分成 50/50:一半是只想拿到資料的非技術商務使用者,另一半是想要能運作程式碼的初學到中階開發者。所以我把兩條路都放在這裡,並排展示。
免程式碼:如何用 Thunderbit 抓取 Craigslist(逐步教學)
- 從 Chrome Web Store 安裝 Thunderbit Chrome 擴充功能。
- 前往 Craigslist 刊登頁面——例如您所在城市的公寓頁(
https://yourcity.craigslist.org/search/apa)。 - 點擊「AI 建議欄位」——Thunderbit 的 AI 會讀取頁面,並針對分類提出欄位。住房分類會看到標題、價格、坪數、臥室、地點、刊登日期、連結。
- 檢視並調整建議欄位,如有需要可新增或移除欄位。
- 點擊「抓取」——看著資料填入結構化表格。
- 處理分頁——逐頁點選,或讓 Thunderbit 自動處理。
- **使用「抓取子頁面」**逐一拜訪每筆刊登,並以詳細頁欄位補充資料:完整描述、所有圖片、內嵌聯絡資訊。
- 匯出到 Google Sheets、Excel、Airtable、Notion 或 CSV——免費。
整個流程抓一頁結果大約只要 2 分鐘。沒有 CSS 選擇器,沒有代理,沒有程式碼。
程式碼路線:如何用 Python + Playwright 抓取 Craigslist
在 2026 年的開發者論壇裡,Playwright 是最常被推薦用來抓取 Craigslist 的函式庫。下面是一段可用的 Python 範例,會抓取 Craigslist 住房結果頁、擷取標題 / 價格 / 連結、處理分頁,並輸出結果。
做法是:先嘗試 JSON-LD 結構化資料(Craigslist 在某些頁面會嵌入 ItemList schema),再退回 DOM 選擇器。分頁則透過 s=120。
import asyncio, json
from urllib.parse import urlparse, parse_qs, urlencode, urlunparse
from playwright.async_api import async_playwright
def next_page_url(url, step=120):
p = urlparse(url)
qs = parse_qs(p.query)
offset = int(qs.get("s", ["0"])[0]) + step
qs["s"] = [str(offset)]
return urlunparse((p.scheme, p.netloc, p.path, "", urlencode(qs, doseq=True), ""))
async def scrape_page(page, url):
await page.goto(url, wait_until="domcontentloaded")
await page.wait_for_timeout(1500)
data = []
# 先嘗試 JSON-LD
for raw in await page.locator('script[type="application/ld+json"]').all_text_contents():
try:
obj = json.loads(raw)
except Exception:
continue
if isinstance(obj, dict) and obj.get("@type") == "ItemList":
for item in obj.get("itemListElement", []):
thing = item.get("item", {})
data.append({
"title": thing.get("name"),
"price": thing.get("offers", {}).get("price"),
"link": thing.get("url"),
})
if data:
return data
# 備援:DOM 選擇器
cards = page.locator("div.cl-search-result, li.cl-static-search-result")
count = await cards.count()
for i in range(count):
card = cards.nth(i)
title = await card.locator("a.posting-title, a.titlestring").first.text_content()
link = await card.locator("a.posting-title, a.titlestring").first.get_attribute("href")
price = (await card.locator(".price, .result-price").first.text_content()
if await card.locator(".price, .result-price").count() else None)
data.append({"title": (title or "").strip(), "price": (price or "").strip(), "link": link})
return data
async def main():
start_url = "https://newyork.craigslist.org/search/apa?query=studio"
async with async_playwright() as p:
browser = await p.chromium.launch(headless=True)
page = await browser.new_page()
url = start_url
all_rows = []
for _ in range(3): # 抓 3 頁
rows = await scrape_page(page, url)
if not rows:
break
all_rows.extend(rows)
url = next_page_url(url)
await browser.close()
for row in all_rows[:10]:
print(row)
asyncio.run(main())
這段程式碼之外您還需要: 安裝 Playwright(pip install playwright && playwright install)、高流量執行時的代理設定,以及遇到速率限制時的手動 CAPTCHA 處理。這就是取捨:完全控制,但也要負起全部責任。
免費 vs. 付費:每款 Craigslist 爬蟲的真實成本拆解
這是我在研究這個主題時最希望存在的表格。「免費」在網頁抓取裡是一個很有陷阱的詞。
| 工具 | 完全免費? | 免費方案限制 | 付費起價 | 隱藏成本 |
|---|---|---|---|---|
| Thunderbit | 免費方案(6 頁) | 每月 6 頁;免費試用 = 10 頁 | 更高用量需付費方案 | 無——匯出免費 |
| Scrapy | ✅ 開源 | 無限 | $0 | 代理成本、主機、維護 |
| BeautifulSoup | ✅ 開源 | 無限 | $0 | 代理成本、主機、維護 |
| Playwright | ✅ 開源 | 無限 | $0 | 代理成本、主機、維護 |
| Selenium | ✅ 開源 | 無限 | $0 | 代理成本、主機、維護 |
| ParseHub | 免費方案 | 5 個專案 | 約 $189/月 | 免費版排程執行有限 |
| Apify | 免費方案 | 每月 $5 額度免費 | 約 $49/月 | 按運算量計費可能飆升 |
| Phantombuster | 免費方案 | 5 個槽位、每月 2 小時、10 列匯出 | 約 $56/月(年繳) | 按槽位計費 |
| Bright Data | 僅試用 | 1,000 次請求 / 1 週 | 約 $500+/月 | 代理需另計 |
| Oxylabs | 僅試用 | 2,000 筆結果 / 1GB | 約 $75+/月(Unblocker) | 企業級定價 |
關於「免費」開源工具的重大註記:Scrapy、Playwright、Selenium 和 BeautifulSoup 雖然安裝成本是 $0,但若要在 Craigslist 上大規模運作,仍然需要數小時的開發者設定時間、每月 $50–500+ 的住宅代理,以及 Craigslist HTML 一改就要持續維護。Thunderbit 的 AI 每次都會重新讀頁面(零維護)、匯出免費,而且中等量抓取可以用瀏覽器模式直接省下代理成本。對非開發者來說,這是實打實的優勢。
您實際能抓到哪些資料:Craigslist 各分類欄位
不同 Craigslist 分類的資料結構完全不同。住房刊登和工作刊登看起來幾乎是兩個世界。以下是您在各主要分類中,實際可擷取的內容:
| Craigslist 分類 | 可擷取欄位 | 有聯絡資訊嗎? |
|---|---|---|
| 住房 / 公寓 | 標題、價格、坪數、臥室、浴室、地點、日期、圖片、描述、地圖連結、可入住狀態、寵物政策、洗衣 / 停車 | ⚠️ 有時候(匿名化 email 轉接) |
| 待售 | 標題、價格、狀況、地點、日期、圖片、描述、品牌 / 型號 / 年份(依情況而異) | ⚠️ 有時候 |
| 工作 | 標題、公司、薪資、地點、職務類型、經驗程度、日期、描述 | 很少(通常只有申請連結) |
| 服務 | 標題、地點、描述、圖片 | ⚠️ 有時候 |
| 零工 | 標題、薪資、地點、日期、描述 | ⚠️ 有時候 |
幾個重要提醒:
- 聯絡資訊: Craigslist 會使用匿名化 email 轉接,專門避免直接抓取電子郵件。那些聲稱能「擷取 email」的工具,通常抓到的是轉接地址(
reply+randomstring@craigslist.org),不是刊登者的真實信箱。 - 詳細頁欄位 如完整描述、所有圖片與內嵌聯絡資訊,只會出現在您逐一拜訪每筆刊登時——搜尋結果頁看不到。
- Thunderbit 的「AI 建議欄位」 會自動偵測目前頁面可用的欄位,並提出合適的欄位結構。抓住房資料的使用者會看到坪數 / 臥室欄位;抓工作資料的使用者會看到薪資 / 職務類型欄位——全都不需要手動設定。接著它的 子頁面抓取 會逐一拜訪每個刊登,取得僅在詳細頁才有的欄位。
法律現實檢查:Craigslist TOS、3Taps 案件,以及您應該知道的事
我不是律師,這也不是法律意見。不過我知道使用者會擔心這件事,所以值得直接回答。
關鍵先例: 在 Craigslist v. 3Taps(2013),Craigslist 在發出停止侵權通知後,成功對 3Taps 的抓取與重新發布刊登行為取得禁制令。據稱 3Taps 使用代理伺服器繞過 IP 封鎖,而法院將封鎖後的存取視為可能屬於「未經授權」。 EFF 提到 這個案件於 2015 年和解。
Craigslist 使用條款 明確 禁止 使用「robots、spiders、scripts、scrapers、crawlers,或任何自動化或手動等效方式」與網站互動。它甚至對違規行為設定了損害賠償:在 24 小時內超過前 1,000 次頁面瀏覽後,每頁 $0.25。
實務建議:
- ✅ 可為市場研究或個人用途抓取公開刊登資料
- ✅ 尊重 robots.txt 與速率限制
- ⚠️ 不要大量重新發布抓取到的刊登內容
- ⚠️ 不要把抓到的聯絡資訊用於未經請求的行銷
- ❌ 在被封鎖後,不要繞過技術存取限制
這裡的區別很重要:為了自己的分析而抓取公開可見的資料,和大量重新發布或為垃圾郵件蒐集 email,是兩回事。但也請注意,Craigslist 過去確實會從條款執法一路升級到 IP 封鎖,再到法律行動。
哪款 Craigslist 爬蟲最適合您?
測試並評估完這 10 款後,以下是我按情境做出的推薦:
- 非技術商務使用者,需要快速拿到 Craigslist 資料 → Thunderbit。免程式碼、AI 驅動欄位偵測、零維護、免費匯出。從「我需要這些資料」到「它已在我的試算表裡」最快的路徑。
- 企業團隊,需要每天跨所有區域抓取數千筆刊登 → Bright Data。Craigslist 專用爬蟲、龐大代理基礎架構、自動 CAPTCHA 解決、專屬支援。
- 需要代管 API / 代理基礎架構的開發團隊 → 偏向代理優先工作流程可選 Oxylabs,需要 actor 市集彈性則選 Apify。
- 想要完整控制與客製化的開發者 → Scrapy + Playwright。開源、彈性最高,但代理與維護要自己處理。
- 預算有限、需求中等的使用者 → Apify 免費方案(每月 $5 額度)或 ParseHub 免費方案(5 個專案)。
- 已在使用跨平台潛在客戶開發工具的銷售團隊 → Phantombuster。把 Craigslist 加進既有流程即可。
- Python 初學者,要做一次性抓取 → BeautifulSoup + requests。程式碼少、設定少、能力也最簡單。
對大多數非技術商務使用者來說,Thunderbit 在易用性、準確度與成本之間取得了最佳平衡。對開發者來說,Scrapy + Playwright 是最強的組合。若要做企業級規模,Bright Data 很難被超越。
如果您想看看 AI 驅動的 Craigslist 抓取實際長什麼樣子,歡迎 試用 Thunderbit——免費方案就足以在自己的情境上測試。如果您想更深入了解網頁抓取技巧,也可以參考我們的指南:如何抓取到 Google Sheets、最佳自動化網頁抓取工具、以及如何在不被封鎖的情況下進行網頁抓取。您也可以到我們的 YouTube 頻道 觀看逐步教學影片。
祝您抓取順利——願您的資料永遠乾淨、結構化,並隨時可投入使用。
常見問題
抓取 Craigslist 刊登是否合法?
Craigslist 的使用條款明確禁止自動化抓取,而 Craigslist v. 3Taps 案 是最重要的法律先例。為個人或分析用途抓取公開刊登資料,通常會和大量重新發布或垃圾郵件用途有所區別,但您仍應尊重速率限制與網站規範——而且這不是法律建議。
我可以不用寫程式就抓取 Craigslist 嗎?
可以。像 Thunderbit、ParseHub 和 Apify 這類工具,都提供免程式碼或低程式碼的 Craigslist 資料擷取方式。Thunderbit 的 AI 欄位偵測特別簡單——只要點一下「AI 建議欄位」和「抓取」即可。
最好的免費 Craigslist 爬蟲是哪一款?
對開發者來說,Scrapy 或 BeautifulSoup 都是完全免費且開源的選擇(雖然代理與維護成本會累積)。對不寫程式的人來說,Thunderbit 的免費方案(每月 6 頁)是最好的起點,ParseHub 的免費方案(5 個專案)則是另一個選項。
抓取 Craigslist 時,怎麼避免被封鎖?
使用速率限制(每次至少延遲 2–5 秒)、輪換 user-agent、避免資料中心代理(在 Craigslist 上住宅或 ISP 代理效果好得多),並且不要以可預測模式爬取。對中等量需求來說,像 Thunderbit 這種基於瀏覽器的抓取工具,會直接在您自己的 Chrome 工作階段中執行,從而完全避開代理問題。
我可以一次抓取所有 Craigslist 區域嗎?
使用 Scrapy 或 Playwright 這類開發者工具,您可以程式化地逐一遍歷全部 416 個美國 / 屬地區域 URL。像 Bright Data 和 Oxylabs 這類企業工具也內建跨區域抓取。使用 Thunderbit 時,您可以打開各區域站點,並用同一套流程抓取——AI 會自動適應每個頁面。
試用 Thunderbit 進行 Craigslist 抓取 Get Started Free
了解更多


