你想保留哪些人的留言,會決定你需要使用哪種備份方法:
- **你撰寫的留言:**使用 Google Takeout 和 YouTube 留言記錄。
- **影片或頻道上的留言與回覆:**使用 YouTube Data API,接著分頁擷取結果。
- **審核或支援紀錄:**保留文字、作者、影片詳細資訊、直接連結、回覆、狀態與擷取時間。
這項區分能避免把個人帳戶匯出誤認為整個頻道的留言封存。
想要的是完整的 YouTube 個人檔案封存,而不是單次留言檔案嗎?SocialGuardian 將 YouTube 列為支援的平台之一,封存內容僅保留在你的帳戶中,並表示你隨時可以匯出完整封存內容(查看封存選項)。開始備份
1. 選擇你需要保留的紀錄
先回答一個問題:你要保留的是自己公開發表的留言,還是你管理或正在檢視之影片上的觀眾留言?
YouTube 的「留言記錄」可讓你查看自己在 YouTube 留下的公開留言,並點選或輕觸留言內容,開啟留言發布的原始位置(YouTube 說明)。這適合用來尋找自己的留言及其原始脈絡。
Google Takeout 是帳戶層級的方式。匯出方法比較指出,Takeout 與影片或頻道匯出不同:Takeout 會匯出你撰寫的留言,而不是其他觀眾在你的影片下留下的留言(匯出方法比較)。
若要處理觀眾留言,請使用 YouTube Data API 的 commentThreads.list。你可以依 videoId 或 allThreadsRelatedToChannelId 篩選(YouTube Data API)。
2. 使用 Google Takeout 備份你撰寫的留言
個人留言封存可採用以下流程:
- 開啟
takeout.google.com。 - 取消選取所有產品,然後選取 YouTube 和 YouTube Music。
- 在 YouTube 下方,於資料選項中選取 留言。
- 選擇匯出格式與檔案大小,然後建立匯出檔案。
以上步驟來自經審閱的留言專用 Takeout 流程(匯出方法比較)。Google 也說明一般流程:登入、開啟 Google Takeout、取消選取不需要的產品、視需要使用 已包含的所有資料 縮小產品範圍,然後選取 下一步(Google Takeout 說明)。
Takeout 支援透過電子郵件或雲端儲存空間傳送、單次或排程匯出、ZIP 或 TGZ 檔案,以及封存大小限制(Google Takeout 說明)。Google 表示,建立封存可能需要幾分鐘到幾天,多數人會在同一天收到連結;較大的下載內容可能會分割成多個封存檔(Google Takeout 說明)。
記錄提出匯出要求的日期,以及收到或下載封存檔的日期。Google 警告,資料檔案可能不包含提出下載要求到建立封存期間所做的變更,因此應將每次 Takeout 視為快照(Google Takeout 說明)。下載資料不會將資料從 Google 伺服器刪除(Google Takeout 說明)。
3. 使用 YouTube Data API 匯出影片或頻道留言
對於其他觀眾留下的留言,請以 commentThreads.list 建立封存:
- 為單支影片的留言串選擇
videoId,或為與頻道相關的留言串選擇allThreadsRelatedToChannelId。 - 使用介於 1 到 100 的
maxResults要求一頁結果。 - 持續使用
nextPageToken,直到沒有下一頁。 - 儲存傳回的
items及回應的pageInfo,包括totalResults與resultsPerPage。 - 如有需要,使用
searchTerms將結果限制為包含指定詞語的留言,並將textFormat選為html或plainText。
YouTube API 參考文件說明了篩選器、頁面大小、分頁欄位、搜尋篩選器與文字格式(commentThreads.list)。將頁面權杖與總數一併保存在匯出內容中,可以證明這次執行涵蓋了多少資料,而不只是留下一堆留言列(commentThreads.list)。
呼叫結果前請先確認存取權限。API 文件列出影片停用留言時會出現 commentsDisabled 403,以及要求缺少權限時會出現 insufficient permissions 錯誤(commentThreads.list)。將這些失敗與封存內容一併記錄,並將受影響的影片或頻道標記為不完整。
每次 commentThreads.list 呼叫會耗用 1 個配額單位。額外的頁面要求也會產生該方法的成本;啟用 YouTube Data API 的專案對所有其他端點每日預設配額為 10,000 單位,每日配額會在太平洋時間午夜重設(YouTube 配額指南)。
如果你想要定期封存公開個人檔案,而不是手動組合每次匯出,SocialGuardian 表示其自動備份每天執行,並涵蓋包括 YouTube 在內的支援平台內容與互動(SocialGuardian)。設定個人檔案備份
4. 保留回覆與審核脈絡
頂層留言串回應不代表所有回覆都已存在。留言保存指南指出,完整擷取回覆可能需要使用 comments.list,並建議保留父子關係(留言保存指南)。
請使用以下回覆流程:
- 從留言串紀錄儲存頂層留言及其留言 ID。
- 使用該留言 ID 作為
parentId呼叫comments.list。 - 每頁要求最多 100 筆結果,並使用
pageToken擷取其他頁面。 - 儲存每則回覆及其父留言 ID。
YouTube API 文件說明了 parentId、1 到 100 的頁面大小,以及 comments.list 的 pageToken 分頁方式(comments.list)。文件也指出,YouTube 目前支援回覆頂層留言;未來可能支援回覆回覆(comments.list)。
對於已授權的要求,commentThreads.list 可以用 heldForReview、likelySpam 或 published 篩選 moderationStatus;預設值為 published(commentThreads.list)。審核脈絡重要時,請將狀態與擷取時間一併儲存。當 API 回報留言停用或權限不足時,不要將這次執行標記為完成(commentThreads.list)。
5. 建立仍然實用的封存
缺少影片與留言串脈絡的留言列,日後很難檢視。保存檢查清單建議保留:
- 留言文字
- 顯示的作者名稱
- 影片標題
- 留言直接連結
- 擷取日期
- 若紀錄用於支援,還要保留相關回覆與問題狀態
以上欄位來自實用的留言保存指南(留言保存指南)。對於 API 匯出,加入留言 ID、父留言 ID、要求篩選器、頁面權杖與回應總數,讓關係與收集範圍保持清楚(commentThreads.list;comments.list)。
選擇 CSV 或 JSON
使用 CSV 時,請將父留言 ID 保存在獨立欄位中。使用 JSON 時,請在結構中保留留言串與回覆的關係。無論使用哪種格式,都要在紀錄中保留直接連結與擷取日期(留言保存指南)。
驗證連結與涵蓋範圍
點選或輕觸留言時間戳記時,YouTube 會建立醒目顯示的留言連結;網址列中的連結會指向該留言及其留言串(YouTube 說明)。若要檢查已儲存的連結,請在私密視窗中開啟,確認醒目顯示的是目標留言串,而不只是開啟影片(留言保存指南)。
對於 API 執行結果,將已儲存的項目數量與 pageInfo.totalResults 比較,保留 resultsPerPage,並在仍有更多頁面時保留 nextPageToken(commentThreads.list)。對於回覆,使用 comments.list 的分頁方式與父留言 ID 重複相同檢查(comments.list)。
6. 讓備份流程可重複執行
實用政策包含三個部分:
- **選擇範圍:**你撰寫的留言使用 Takeout;影片或頻道留言串使用 API。
- **選擇頻率:**Takeout 支援單次與排程匯出,因此當單一快照不足時,請使用排程匯出(Google Takeout 說明)。對於 API 工作,記錄每次執行是每日、每週,還是與審核或發布事件相關。
- **驗證每次執行:**記錄擷取時間、頁面總數、分頁證據、存取失敗,以及至少一次永久連結檢查(Google Takeout 說明;commentThreads.list;留言保存指南)。
備份保留的是當時擷取到的內容。YouTube 表示,如果留言發布在已刪除的影片上,或因違反政策而被 YouTube 移除,該個人留言不會出現在留言記錄中(YouTube 說明)。因此,需要歷史紀錄時,擷取時間與範圍十分重要。
SocialGuardian 表示你可以分享公開的 @handle,讓內容自動封存,並在不使用密碼或登入的情況下下載或還原內容(SocialGuardian)。從公開個人檔案開始
FAQ
如何備份 YouTube 留言?
使用 Google Takeout 備份你撰寫的留言。使用 commentThreads.list 處理與影片或頻道相關的留言,透過 nextPageToken 分頁;需要擷取回覆時,使用帶有 parentId 的 comments.list(匯出方法比較;commentThreads.list;comments.list)。
可以匯出 YouTube 影片的所有留言嗎?
你可以使用 videoId 要求影片的留言串,每頁要求最多 100 筆結果,並使用 nextPageToken 繼續擷取。在將封存標記為完成前,請檢查留言是否停用或是否發生權限錯誤(commentThreads.list)。
Google Takeout 會匯出我不擁有的影片留言嗎?
經審閱的匯出比較指出,Takeout 會匯出你撰寫的留言,而不是其他觀眾在你的影片下留下的留言。影片或頻道留言串應改用 YouTube Data API(匯出方法比較;commentThreads.list)。
如何保留 YouTube 留言回覆與審核脈絡?
先擷取留言串,再使用頂層留言作為 parentId 呼叫 comments.list,持續分頁並保留父子關係。對於已授權的要求,儲存 heldForReview、likelySpam 或 published 等 moderationStatus(comments.list;commentThreads.list)。
YouTube 留言應儲存為 CSV 還是 JSON?
試算表排序與分享請使用 CSV。需要階層式留言串結構與程式處理中繼資料時,請使用 JSON(匯出方法比較)。
YouTube API 能擷取留言串中的每一則回覆嗎?
不要假設單次 commentThreads.list 回應包含所有回覆。請使用帶有 parentId 的 comments.list,並透過 pageToken 分頁;YouTube 目前文件化支援回覆頂層留言(留言保存指南;comments.list)。
應該多久備份一次 YouTube 留言?
選擇符合留言或審核紀錄變化速度的已記錄頻率。Google Takeout 支援單次與排程匯出;API 流程則應記錄每次執行是每日、每週或依事件進行(Google Takeout 說明)。
YouTube 留言遭刪除後可以復原嗎?
請在刪除前保留副本,並保存其文字、作者、影片標題、直接連結、回覆與擷取日期。YouTube 表示,已刪除影片上的留言,或因違反政策而被移除的留言,不會出現在留言記錄中(留言保存指南;YouTube 說明)。