用 Python 抓取 Twitter 數據:完整步驟教學

最後更新於 August 25, 2025

全球每天都在熱烈討論各種話題,而這些討論有很大一部分都發生在 Twitter(或現在叫 X,如果你有跟上這波改名的話)。。Twitter 數據早已成為企業、研究人員,甚至任何想掌握即時趨勢、輿論或民意的寶庫。但問題來了:現在想取得這些數據,真的沒那麼簡單。Twitter 的 API 越來越嚴格(而且價格高得嚇人),讓不少人不得不另尋門路來獲取所需資料。

這時候,Python 網頁爬蟲工具——像 ——就超級實用。不管你是想自動化數據收集的工程師,還是只想快速抓熱門話題的行銷人員,都能找到適合自己的解決方案。這篇教學會帶你一步步了解怎麼用 Python 抓 Twitter 數據(完全不用 API),怎麼合法又合規地操作,以及 Thunderbit 怎麼讓這一切變得超簡單。

什麼是 Twitter 數據爬取?為什麼這麼重要?

所謂 Twitter 數據爬取,就是直接從 Twitter 公開網頁(像推文、個人檔案、標籤、熱門趨勢)讀取並收集資訊,而不是透過官方 API。你可以選擇土法煉鋼地手動複製貼上(但誰想這麼累?),也可以用自動化工具或腳本輕鬆搞定。

為什麼這麼重要?因為 Twitter 數據能用在各種商業和研究場景:

  • 趨勢分析: 隨時掌握最新熱門話題,從爆紅迷因到重大新聞都不漏接。
  • 情緒監測: 了解大眾對產品、品牌或政治事件的真實反應。
  • 潛在客戶開發: 找出討論你產業的潛在客戶或影響者。
  • 競爭對手追蹤: 監控競爭者的動態,以及外界對他們的評價。

以前這些數據大多靠 取得。但自 2024 年起,免費方案已經消失,連最陽春的方案都可能要價數百甚至上千美元。API 還、速度,認證流程又超麻煩。

所以,不管你用 Python 還是無程式碼工具,網頁爬蟲已經成為想要彈性、廣泛存取資料,或不想被 API 綁死的首選。

用 Python 爬 Twitter:繞過 API 限制

來點技術面的內容。用 Python 抓 Twitter,其實就是自動化瀏覽器,打開 Twitter 頁面、讀取 HTML,然後把你要的資訊撈出來。這樣一來,你不會被 API 配額或收費卡住,只要是公開資訊都能抓。

常見 Python Twitter 爬蟲函式庫

這裡有幾個熱門的 Python 工具,讓你不用 API 也能抓 Twitter:

  • :適合解析靜態 HTML,速度快又輕巧,但遇到動態內容(像無限捲動)就有點吃力。
  • :能自動操作真實瀏覽器(Chrome、Firefox 等),很適合像 Twitter 這種動態網站。能處理 JavaScript、點擊、捲動等互動。
  • :新一代工具,和 Selenium 類似,但速度更快、穩定性更高,特別適合現代網頁。

這些工具可以抓:

  • 公開推文(內容、時間、按讚、轉推數)
  • 用戶資料(自介、粉絲數、註冊時間)
  • 熱門話題
  • 標籤與搜尋結果

要注意:只能抓公開網頁內容,私人帳號和私訊是無法存取的。

Python 爬蟲函式庫比較

來看看這些工具的優缺點:

函式庫最適用於支援 JavaScript?速度易用性備註
BeautifulSoup靜態 HTML 解析快速簡單適合簡單頁面,需搭配 requests
Selenium動態內容、UI 操作中等中等適合大量 JS 的網站
Playwright現代動態網站最快中等支援非同步,穩定性高於 Selenium

Twitter 頁面大多是動態載入和無限捲動,通常建議用 Selenium 或 Playwright(參考 )。

合規操作:負責任地抓 Twitter 數據

在你開始寫 Python 腳本之前,先記住幾個重點:

  • 遵守 Twitter 條款: 2024 年起,及部分商業用途。但如果只是個人、研究或非商業目的,且只抓公開資料,通常比較沒問題(但官方不保證)。
  • 避免過度請求: 每次請求間隔 2–5 秒,每小時抓取頁數要有限制,千萬別 24 小時不間斷執行。這樣可以降低被判定為機器人或 IP 被封鎖的風險(參考 )。
  • 只抓公開資料: 千萬別試圖存取私人帳號、私訊或繞過登入限制。
  • 注意法規: 如果收集到個資(像 email、姓名),要遵守 GDPR 等隱私法規,並盡量匿名化或彙總敏感資訊。

更多合規建議可以參考

實作教學:用 Python 抓 Twitter 數據

來實戰一下!以下用 Selenium 示範怎麼抓公開 Twitter 帳號的推文。

1. 環境安裝

先安裝需要的函式庫:

1pip install selenium pandas webdriver-manager

2. 撰寫爬蟲腳本

這是一個簡單範例:

1from selenium import webdriver
2from selenium.webdriver.common.by import By
3from selenium.webdriver.chrome.service import Service
4from webdriver_manager.chrome import ChromeDriverManager
5import pandas as pd
6import time
7# 啟動瀏覽器
8driver = webdriver.Chrome(service=Service(ChromeDriverManager().install()))
9# 前往目標 Twitter 頁面(請換成你要抓的帳號)
10profile_url = '<https://twitter.com/nytimes>'
11driver.get(profile_url)
12time.sleep(5)  # 等待頁面載入
13# 捲動頁面以載入更多推文
14for _ in range(3):  # 想抓更多可以調整次數
15    driver.execute_script("window.scrollTo(0, document.body.scrollHeight);")
16    time.sleep(3)
17# 抓取推文內容
18tweets = driver.find_elements(By.CSS_SELECTOR, '[data-testid="tweetText"]')
19tweet_texts = [tweet.text for tweet in tweets]
20# 抓取推文時間
21timestamps = driver.find_elements(By.CSS_SELECTOR, 'time')
22tweet_times = [ts.get_attribute('datetime') for ts in timestamps]
23# 整理成 DataFrame
24df = pd.DataFrame({'Tweet': tweet_texts, 'Timestamp': tweet_times})
25# 匯出 Excel
26df.to_excel('twitter_scrape.xlsx', index=False)
27driver.quit()

小提醒:

  • 想抓更多推文可以調整捲動次數。
  • 也能抓按讚、轉推、回覆數,只要找到對應的 CSS selector(參考 )。
  • 如果遇到錯誤,檢查 Twitter 是否改版,CSS selector 可能要更新。

解析與匯出 Twitter 數據

上面這段程式已經可以匯出 Excel,也可以改成:

1df.to_csv('twitter_scrape.csv', index=False)

建議整理欄位:推文內容、時間、用戶名、按讚、轉推、回覆數,這樣後續分析(不管用 Excel、Google Sheets 還是 Python)都更方便。

Thunderbit:無程式碼 Twitter 數據爬蟲神器

如果你不會寫程式,或只是想省時省力,Thunderbit 絕對是你的神隊友。Thunderbit 是一款 AI 驅動的 Chrome 擴充功能,只要幾個步驟就能抓 Twitter 數據——完全不用寫 Python、安裝環境或搞複雜設定。

Thunderbit 怎麼抓 Twitter

  1. 在 Chrome 開啟 Twitter。
  2. 點擊 Thunderbit 擴充功能。
  3. 用自然語言描述需求: 例如「抓取本頁所有推文、日期和用戶名」。
  4. AI 自動推薦欄位: Thunderbit 會掃描頁面,建議你抓哪些欄位(像推文內容、時間、按讚數等)。
  5. 點擊開始爬取: Thunderbit 會自動抓資料,還能深入子頁面。
  6. 匯出資料: 一鍵下載到 Excel、Google Sheets、Airtable、Notion 或 CSV,免費又即時。

Thunderbit 還有,讓你省去設定流程,直接進入分析。

為什麼這麼方便? 你不用煩惱程式碼、驅動程式或 CSS selector。Thunderbit 的 AI 會自動適應 Twitter 版面變動,還能在爬取時幫你摘要、分類、翻譯資料(參考 )。

Shuai Guan
Shuai Guan
Co-founder/CEO @ Thunderbit. Passionate about cross section of AI and Automation. He's a big advocate of automation and loves making it more accessible to everyone. Beyond tech, he channels his creativity through a passion for photography, capturing stories one picture at a time.
Topics
如何用 Python 抓取 Twitter 數據Twitter 爬蟲抓取 TwitterPython Twitter
目錄

立即體驗 Thunderbit

兩步驟快速擷取名單與各類資料,AI 智能驅動。

取得 Thunderbit 免費體驗
用 AI 擷取資料
輕鬆將資料匯入 Google Sheets、Airtable 或 Notion
Chrome Store Rating
PRODUCT HUNT#1 Product of the Week