如何將 Twitter / X 串文儲存為 Markdown(完整串文,按順序)

·

Twitter(現 X)從來不是為了匯出而設計的。沒有「儲存串文」按鈕,沒有逐字稿下載,沒有封存選項。複製貼上一條長串文,你得到的推文順序錯亂,被回覆縮排打斷,引用推文被壓縮成「檢視推文」連結,一旦原文被刪除這些連結就指向虛空。而串文不斷被刪除——帳號轉為私密,推文被移除,整個對話在一次內容審核浪潮中消失。

本指南涵蓋將 Twitter / X 串文轉換為乾淨 Markdown 的所有方法——從單則爆款推文到 100 則貼文的超長串文。

為什麼將 Twitter 串文儲存為 Markdown?

Markdown 是適合串文去向任何地方的格式:

  • 餵給 LLM --- Claude、ChatGPT、Gemini 和本機模型都原生地將 Markdown 作為上下文讀取
  • 放入 Obsidian 或 Notion --- 一個檔案,完全可搜尋,每則推文按順序保留
  • 引用特定推文 --- 時間戳和使用者名稱完整,即使原文被刪除你也能引用來源
  • 在串文消失前封存 --- 帳號被停權,推文被移除,你的筆記不應該依賴 X 的執行時間
  • 建立個人研究基礎 --- 來自營運者、研究者和建造者的串文是網際網路上密度最高的內容之一,而這些預設都不會被保留

2026 年推動大部分 Twitter 到 Markdown 流量的使用案例是第一個:人們想就剛讀完的長串文向 Claude 或 ChatGPT 提問,而貼上 URL 行不通,因為模型無法通過 X 的驗證。

方法 1:Save(最快,一鍵)

Save 是一個 Chrome 擴充功能,可一鍵將任何 Twitter 或 X 串文轉換為 Markdown 檔案。它按發佈順序走完串文,為每則推文附上作者使用者名稱和時間戳,並將引用推文內聯巢狀,讓對話真正能從上到下閱讀。

運作方式:

  1. 在 Chrome 中開啟 twitter.com 或 x.com 上的串文
  2. 點擊工具列中的 Save 擴充功能圖示
  3. 一個 .md 檔案立即下載(或者落入你的 Save Vault,如果已連接)

你獲得的:

  • 串文中的每則推文,按發佈順序
  • 每則推文上每個作者的顯示名稱 + 使用者名稱
  • 每則推文的時間戳(連結回原文 URL)
  • 引用推文內聯巢狀,被引用的作者和內容都保留
  • 圖片和影片作為 Markdown 引用(![alt](url)
  • 嵌入的 YouTube 影片和文章作為連結預覽
  • 包含串文作者、首則推文 URL、發佈日期和推文數量的前置元資料

被移除的:

  • 「關注誰」側邊欄、趨勢面板和 X 導覽元素
  • 注入串文的推廣推文
  • 回覆展開後的「顯示更多回覆」UI 雜訊
  • 來自其他使用者的回覆推文(除非它們是多作者串文的一部分)
  • 每則推文上的互動數(僅在根推文上作為元資料保留)

最適合: 研究者、AI 使用者、建造者,以及任何閱讀長串文並需要將其轉化為永久、可引用形式的人。如果你想將 50 則推文的串文貼到 Claude 或封存到 Obsidian 中,這是最乾淨的路徑。

輸出範例

儲存一個建造者的 12 則串文會產生:

---
title: "Thread by @paulg on what makes a good founder"
author: Paul Graham
handle: "@paulg"
url: https://x.com/paulg/status/1234567890
date: 2026-04-12
tweets: 12
---

## Thread

**Paul Graham** [@paulg](https://x.com/paulg) --- Apr 12, 2026, 9:14 AM

The best founders I've met all share one trait, and it's not what
people usually say. It's not grit, intelligence, or vision. It's
something more specific.

---

**Paul Graham** [@paulg](https://x.com/paulg) --- Apr 12, 2026, 9:14 AM

It's the ability to update fast on new information without losing
conviction in the underlying thesis. Most people do one or the other.

---

**Paul Graham** [@paulg](https://x.com/paulg) --- Apr 12, 2026, 9:15 AM

> Quoting **Sam Altman** [@sama](https://x.com/sama):
> Conviction without flexibility is dogma. Flexibility without
> conviction is drift.

Exactly this. The trick is holding both at once.

那個檔案距離成為可用的 Claude 上下文只差一次貼上,距離成為永久的 Obsidian 筆記只差一次按鍵——即使原串文明天被刪除。

方法 2:ThreadReaderApp(瀏覽器,僅 Web)

ThreadReaderApp 多年來一直是首選的「展開」工具。你回覆 @threadreaderapp unroll 給某則推文(或在他們的網站上貼上 URL),就能獲得串文的單頁版本。

步驟:

  1. 開啟你想儲存的串文
  2. 在 threadreaderapp.com 貼上 URL 或用展開指令回覆
  3. 等待展開渲染
  4. 將渲染的 HTML 複製到 Markdown 轉換器,或使用他們的匯出功能

這種方法的問題:

  • 輸出是 HTML 或 PDF,不是 Markdown --- 每次轉換都增加阻力
  • 引用推文通常被壓平為連結,而非巢狀
  • 圖片在匯出中經常損壞(指向 X CDN 的熱連結會過期)
  • 免費層有速率限制和浮水印;乾淨的匯出需要訂閱
  • 在受保護帳號或已刪除作者的串文上不起作用
  • 回覆串文上下文(當作者在回應其他人時)會遺失

適用於你想稍後閱讀的一次性公開串文。如果你需要在許多串文上獲得一致的 Markdown 輸出,它會崩潰。

方法 3:Twitter API + 指令稿

為了完全控制,你可以透過 X API 拉取對話並自己格式化。

import tweepy

client = tweepy.Client(bearer_token=BEARER_TOKEN)
tweets = client.search_recent_tweets(
    query=f"conversation_id:{ROOT_TWEET_ID} from:{AUTHOR_HANDLE}",
    tweet_fields=["created_at", "author_id", "referenced_tweets"],
    max_results=100,
)

for t in sorted(tweets.data, key=lambda x: x.created_at):
    print(f"[{t.created_at}] {t.text}\n")

最適合: 大規模封存串文的工程團隊,或任何建立公開話語資料集的人。需要付費 X API 層級(免費層不會傳回對話串文),而且速率限制激進。

這種方法的問題:

  • 截至 2026 年,X API 存取從 Basic 層每月 100 美元起步 --- 不值得個人使用
  • 對話查詢在大多數層級上只傳回過去 7 天的推文
  • 每則引用推文的內容需要單獨查詢
  • API 回應中的媒體 URL 會過期,需要立即下載
  • 沒有乾淨的 Markdown 格式 --- 你自己寫渲染
  • 受保護帳號和已刪除推文不傳回任何內容

如果你在建構基礎設施,這是正確的方法。對於單則串文來說,這是過度(且昂貴)的。

方法 4:手動複製 + 重新格式化

開啟串文,捲動到頂部,然後手動將每則推文複製貼上到 Markdown 檔案。

步驟:

  1. 在 twitter.com 或 x.com 開啟串文
  2. 捲動到串文的第一則推文
  3. 逐則複製每則推文,貼到 .md 檔案
  4. 手動新增使用者名稱、時間戳和引用推文上下文
  5. 下載任何圖片,託管到某處,再連結回來

這種方法的問題:

  • 30 則串文需要 20 多分鐘
  • X 的複製行為會把互動數和「顯示此串文」標籤連同推文文字一起貼上
  • 每則引用推文都需要單獨處理
  • 捲動時頁面延遲載入,容易漏掉推文
  • 除非你也複製工具提示文字,否則時間戳格式沒有一致性

封存一則你想記住的推文還行。任何長於五則的都很痛苦。

你應該使用哪種方法?

場景最佳方法
將串文貼到 Claude 或 ChatGPTSave --- 一鍵,結構化輸出
在串文被刪除前封存Save --- 保留署名和時間戳
建立串文的個人研究庫Save --- 每次儲存都有一致的 Markdown
六個月後引用特定推文Save --- 每則推文的使用者名稱 + 時間戳 + URL
稍後閱讀一條長串文而不封存ThreadReaderApp --- 免費展開,僅 Web
大規模建立公開話語資料集X API + 指令稿 --- 程式化,需要付費層
儲存一則短推文用於引用手動複製 --- 30 秒,無需工具

對於大多數人 --- 尤其是任何使用 Twitter 串文作為 AI 上下文或研究材料的人 --- Save 是答案。它無需設定就產生最乾淨的 Markdown,並以與單則貼文相同的速度處理 100 則推文的串文。

Save 處理的邊緣案例

  • 「顯示更多回覆」展開。 Save 在快照前完全展開串文。如果一則推文有來自同一作者的隱藏回覆,它們會被拉入。輸出是完整串文,而不僅僅是可見部分。
  • 多作者串文。 當串文是兩個或更多人之間的來回(罕見但在技術討論中會發生),Save 用正確的作者標記每則推文,並按時間戳保持順序。
  • 串文中間被刪除的推文。 如果 10 則串文中的第 4 則不見了,Save 會用 [deleted] 和時間戳佔位符標記它,讓順序保持完整,並讓你知道有東西被移除了。
  • 引用推文 vs 回覆推文。 引用推文作為 Markdown 引用塊內聯巢狀,附被引用作者。第三方的回覆推文被排除,除非它們是作者本人擴展自己串文的回覆。
  • x.com vs twitter.com URL。 兩者都有效。Save 自動偵測網域並處理兩者之間的 cookie/登入差異 --- 你不需要遷移 URL。
  • 長串文(50+ 推文)。 Save 在快照前等待整個串文延遲載入完成。「捲動載入」頁面透過遍歷 DOM 處理,直到沒有新推文出現。超長串文(100+)可以正確儲存。
  • 嵌入的 YouTube 影片或文章。 連結預覽作為附標題和來源的 Markdown 連結保留。如果嵌入是圖片卡片,它將儲存為圖片引用。
  • 鎖定或受保護的帳號。 Save 看到的是你登入瀏覽器看到的。如果你被批准關注該帳號,串文會儲存。否則,它看不到你看不到的內容。
  • 被停權的帳號。 一旦帳號被停權,串文就從 X 消失。如果你在停權前儲存了它,你的 Markdown 副本是唯一的記錄。否則,Save 無法復原(什麼都不能)。

與你的工作流程搭配

Markdown 輸出在你需要的任何地方都能運作:

  • Claude / ChatGPT / Gemini --- 貼上檔案,針對串文提出後續問題
  • Obsidian --- 放入你的 vault,將推文連結到相關筆記,跨越你曾儲存過的每個作者搜尋
  • Notion --- 直接貼上,引用塊和圖片連結正確渲染
  • Apple Notes --- 透過 Markdown 分享擴充功能乾淨匯入
  • Save Vault --- 如果你連接了一個,每個 Twitter 儲存都會自動落在那裡,按作者分組,附反向連結和標籤

常見問題

Save 在 X 行動版網站或應用程式上有效嗎? 擴充功能目前僅限桌面端 Chrome。在行動裝置上,複製 URL 並在桌面開啟,或貼到 Mac 上的 Save Vault(它有 URL 處理程式)。

它在 x.com 上有效還是僅 twitter.com? 兩者都有效。Save 自動偵測你在哪個網域。現有的 twitter.com 書籤仍然解析,x.com 運作方式相同。

單則推文呢,不是串文? 運作方式相同。單則推文儲存為附完整署名、時間戳和媒體的單推文 Markdown 檔案。適用於在文件或論文中引用特定貼文。

Save 能只擷取根推文的文字而不要整個串文嗎? 可以。擴充功能讓你選擇:完整串文、僅根推文、或根 + 作者的回覆。預設是完整串文。

它儲存圖片和影片嗎? 圖片在可能的情況下儲存為附穩定 URL 的 Markdown 引用。影片用縮圖連結。對於長期封存,將 Save 指向 Save Vault,它可以在本地鏡像媒體。

受保護(鎖定)帳號上的串文呢? Save 尊重 X 的存取規則。如果你是經批准的關注者並能看到串文,Save 可以儲存。否則,它無法繞過保護。

它會儲存被刪除的推文嗎? 僅當你儲存它們時它們還在線。一旦推文從 X 刪除,除了在刪除前製作的副本外,它在所有地方都消失了。這是邊讀串文邊儲存的主要原因。

匯出包括互動數(讚、轉發)嗎? 互動數作為根推文的前置元資料包含(你儲存那一刻的快照)。單則推文的計數被省略以保持輸出乾淨。

多少錢? Save 有免費層,讓你可以在幾條串文上試用。之後,一個小訂閱解鎖無限儲存和 Vault 同步。

相關 Save 指南

## Continue reading

Jean-Sébastien Wallez

Written by

Jean-Sébastien Wallez

I've been making internet products for 10+ years. Built Save on weekends because I wanted my own reading library in clean markdown for Claude and Obsidian. Write here about web clipping, AI workflows, and the small things that make a personal knowledge base actually useful.