X/Twitter 媒體批量下載器(支援 iPhone/Android)用戶指南
此腳本是一款工具,可讓您一鍵下載 X/Twitter 上的圖片、影片和 GIF。
文件以用戶 ID 和貼文 ID 命名保存。對於多個媒體文件,PC 端會分別保存,而行動端則以 ZIP 檔案批量下載。(影片以最高可用品質下載,圖片以原始尺寸下載。)您可以通過編輯程式碼中的 generateFilename
函數來自訂下載檔案的檔案名稱。可用於檔案名稱的元素包括使用者 ID,使用者名稱,貼文 ID 和發布時間。下載歷史也會自動儲存。此外,可以選擇利用 X/Twitter 的書籤功能來實現在線同步下載歷史記錄。
本頁底部附有實際的下載按鈕圖片。
只要使用最新的瀏覽器,無論在 PC 端還是行動端均可正常使用。
此腳本基於以下兩個腳本:
・Twitter/X(網頁版)影片/原始圖片/gif一鍵下載.[limbopro](https://gf.qytechs.cn/ja/scripts/478651)
・Twitter 媒體下載(https://gf.qytechs.cn/ja/scripts/423001)
使用說明
適用於 Windows/Mac
- 腳本安裝:
在瀏覽器中添加 Tampermonkey 並安裝此腳本。
- 在瀏覽器中打開 X/Twitter 並顯示您想下載的推文。
- 點擊分享按鈕旁的下載按鈕,即可分別保存每個媒體文件。
適用於 iPhone/iPad
- 腳本安裝:
從 App Store 下載 Userscripts 應用(連結),並在 Safari 中安裝此腳本。
- 在 iOS 裝置上,進入 設定 → 應用程式 → Safari → 下載,查看下載的媒體保存到哪個資料夾。預設情況下,文件保存在 iCloud Drive 的 “Downloads” 資料夾中,但您可以更改此位置。
- 在 Safari 中打開 X/Twitter 並顯示您想下載的推文。
- 點擊分享按鈕旁的下載按鈕;行為取決於媒體文件數量:
• 如果只有一個媒體文件,則以原始格式下載。
• 如果有多個媒體文件,則以 ZIP 檔案形式下載。
- 對於包含多個媒體的 ZIP 檔案,您可以使用我們提供的快捷方式輕鬆解壓並保存。(請參閱下面的補充說明部分。)
取得快捷方式
適用於 Android
- 腳本安裝:
在支援擴充功能的瀏覽器(如 Edge Canary、Firefox 等)中添加 Tampermonkey 並安裝此腳本。
- 在已安裝腳本的瀏覽器中打開 X/Twitter 並顯示您想下載的推文。
- 點擊分享按鈕旁的下載按鈕;行為取決於媒體文件數量:
• 如果只有一個媒體文件,則以原始格式下載。
• 如果有多個媒體文件,則以 ZIP 檔案形式下載。
- 下載的 ZIP 檔案可以使用預設的文件管理器或第三方應用進行解壓。
補充說明
如何使用 iPhone/iPad 快捷方式
當包含多個媒體文件的 ZIP 檔案被下載後,您可以使用我們專為 iPhone/iPad 提供的快捷方式輕鬆解壓並整理這些媒體文件。請按照以下步驟操作:
- 從 此連結取得快捷方式,並將其添加到您 iPhone/iPad 上的 “快捷方式” 應用中。
- 首次運行該快捷方式時,系統會提示您選擇下載的 ZIP 檔案所在的資料夾。請選擇 iPhone/iPad 使用說明第 2 步中指定的資料夾。預設情況下,會選擇 iCloud Drive 中的 “Downloads” 資料夾。如果您已更改下載資料夾,請在此選擇相應的資料夾。
- 接下來,系統會提示您選擇解壓後的媒體文件保存位置。通常,請選擇與 ZIP 檔案存放位置相同的資料夾。
- 快捷方式將自動解壓 ZIP 檔案,並將每個媒體文件保存到前一步指定的資料夾中。如果該資料夾中已存在文件,則不會覆蓋,並會顯示這些文件的列表。
- 解壓完成後,系統會詢問您是否刪除 ZIP 檔案,請依需要選擇。
從此以後,每次運行該快捷方式都會自動解壓並保存下載的 ZIP 檔案。
※ 快捷方式的設置可根據需要自訂。詳細說明請參閱快捷方式內的解釋。
如何變更下載檔案的名稱
您可以使用使用者 ID、使用者名稱、貼文 ID 和發佈時間,任意變更下載檔案的名稱。若要變更名稱,請編輯程式碼中的 generateFilename
函數。您也可以變更發佈時間的格式。如需詳細資訊,請查看 dayjs 的參考文檔。下方顯示預設設定和其他範例。
預設:使用使用者 ID 和貼文 ID 的名稱
return `${userId}_${postId}-${mediaTypeLabel}${index}.${ext}`;
範例 1:使用使用者 ID、貼文 ID 和發佈時間的名稱 (YYYYMMDD_HHmmss 格式)
const formattedPostTime = dayjs(postTime).format('YYYYMMDD_HHmmss');
return `${userId}_${postId}-${formattedPostTime}-${mediaTypeLabel}${index}.${ext}`;
範例 2:使用使用者名稱、貼文 ID 和發佈日期的名稱 (YYYYMMDD 格式)
const formattedPostTime = dayjs(postTime).format('YYYYMMDD');
return `${userName}_${postId}-${formattedPostTime}-${mediaTypeLabel}${index}.${ext}`;
關於透過書籤同步線上存檔下載歷史記錄
此腳本提供一個可選功能,可以使用 X/Twitter 的書籤功能在線上同步您的下載歷史記錄。
- 如何啟用: 請將程式碼中的
enableDownloadHistorykSync
的值從 false
變更為 true
。 - 運作方式:
- 啟用後,您下載了媒體的貼文將自動新增至您的 X/Twitter 書籤中。
- 已存在於您書籤中的貼文將被視為「已下載」。這些貼文的下載按鈕將顯示完成狀態,以防止重複下載。
- 這使您可以透過書籤,在多個裝置(如電腦和智慧型手機)及不同瀏覽器之間共享和同步您已下載貼文的歷史記錄。
- 預設設定: 預設情況下(
false
),此功能是停用的。下載歷史記錄不會線上同步,僅儲存在您瀏覽器的本機儲存空間(IndexedDB)中。
常見問題 (FAQ)
Q: 如果下載按鈕沒有出現,我該怎麼辦?
A: 請嘗試刷新頁面、清除快取,或確保您正在使用最新版本的瀏覽器。
Q: 我不知道如何解壓 ZIP 檔案。
A: 在 iPhone/iPad 上,您可以使用提供的快捷方式或文件管理應用進行解壓;在 Android 上,您可以使用內建的文件管理器解壓 ZIP 檔案。
Q: 如果下載過程中出現錯誤,我該怎麼辦?
A: 請檢查您的網絡環境,或注意 X/Twitter 規格可能已更改。稍後再試。
Q: 多個媒體文件下載與單個下載哪個優先?
A: 如果只有一個媒體文件,則會單獨下載;如果有多個文件,則會根據作業系統不同,以批量 ZIP 檔案或單獨下載的方式進行。
Q: 如何在 iPhone 上編輯程式碼?
A: 可以使用第三方應用程式進行編輯。例如,您可以使用名為 Documents 的應用程式(連結)。
Q: 如何清除下載紀錄?
A: 請使用瀏覽器的開發人員工具刪除IndexedDB中的DownloadHistoryDB。如果無法做到這一點,例如在行動瀏覽器等情況下,請從瀏覽器設定中清除網站資料。
Q: 如果遇到問題或有疑問,我該怎麼辦?
A: 請透過本頁的反饋部分進行反饋。
許可協議
此腳本採用 MIT 許可協議發布。
詳情請查閱 MIT License。
© 2025 Azuki. All rights reserved