快轉到主要內容

「GPTH」Google相簿搬家整理照片工具教學,合併json日期地點變成單一資料夾

資訊科技 電腦軟體分享 Google Photo
🗓️ 民國112年 癸卯年
✍ 切換正體/簡體字

如果想要將Google相簿照片搬家,最簡單的方式就是跟Google申請下載全部照片了吧,對,你有這個權力,你可以跟Google要你上傳的全部原始畫質檔案(如果你上傳時沒有勾選壓縮畫質的話)。

將Google相簿照片下載到自己電腦,後續要整理總是方便多了。整理好後便可以安心搬家到 Immich PhotoPrism等自架相簿的替代方案了。

但下載後,你可能會遇到照片日期、拍照地點跑掉的問題,以及Google自成一套的資料夾結構,裡面一堆json是安怎!?原來Google相簿把照片資訊分別寫在單獨的json檔呀,可其他相片軟體不見得吃這樣的整理邏輯呀。

為了解決上述問題,我們可以使用開源軟體「Google Photos Takeout Helper」(GPTH) 合併所有檔案,讓下載的照片變成只有一個資料夾,並且還原照片拍攝的時間地點,保留線上整理過的相簿結構。

此軟體由Mateusz Soszyński以Dart語言寫成,支援Linux/Windows/macOS(x86)。


  1. Google Takeout申請資料匯出作業,僅勾選Google相簿,等Google寄下載連結給你。

  2. 使用7zip解壓縮。Google相簿的壓縮檔解壓縮後會含有大量json檔;並且照片是按照年份資料夾分類的,這樣不好用其他軟體管理。

  3. 到Github下載 Google Photos Takeout Helper執行檔,Linux是gpth-linux,Windows是gpth-windoza.exe

  4. 切換到GPTH程式所在的資料夾,開啟終端機(Windows在檔案總管右鍵按+Shift,開啟Powershell),執行GPTH程式,開始合併。

語法為:./gpth -i "來源資料夾路徑" --album "參數" -o "輸出資料夾路徑"

GPTH指令裡面有一個--albums參數,用於設定遇到Google相簿的「線上相簿」的處理方式:

  • duplicate-copy:針對每個相簿建立新資料夾,並複製照片到該資料夾,即使重複也無所謂。此選項佔用更多磁碟空間。
  • json:不複製照片,將所有封存和垃圾桶的照片放在同一個資料夾,並將相簿資訊寫入至單一json檔。
  • nothing:無視封存和垃圾桶的照片,將全部照片放在同一個資料夾。
  • shortcut:針對每個相簿建立資料夾,但不複製檔案,僅新增符號連結(捷徑)指向原始照片,節省磁碟空間。缺點是符號連結可能會在搬移檔案到其他電腦的時候毀損。

我使用以下指令,處理位於 /home/user/Downloads/Takeout/Google 相簿 的照片,使用--album shortcut,並將合併後的照片輸出到桌面的output資料夾。

./gpth-linux -i "/home/user/Downloads/Takeout/Google 相簿" -o "/home/user/Desktop/output" --albums "shortcut"

合併結果如下。原本相簿的Json檔案都不見了,所有照片位於ALL_PHOTOS資料夾下,以及各個相簿的資料夾。

如果點開相簿的資料夾,會發現檔案全部都是連結檔,連結指向上一層ALL_PHOTOS資料夾下的原始照片檔案。

相關文章

一鍵下載網頁畫廊的本子 ~ E-Hentai Downloader指令稿
資訊科技 電腦軟體分享 E-Hentai Browser Extension
Microsoft Activation Scripts教學,一鍵破解Windows金鑰的開源指令稿
資訊科技 電腦軟體分享 Windows
自訂Hugo的RSS訂閱,過濾特定文章不讓其出現在RSS列表
資訊科技 Hugo網站架設 Hugo RSS Feed

留言板

此處提供二種留言板。點選按鈕,選擇您覺得方便的留言板。要討論程式碼請用Giscus,匿名討論請用Disqus。

這是Giscus留言板,需要Github帳號才能留言。支援markdown語法,若要上傳圖片請貼Imgur連結。您的留言會在Github Discussions向所有人公開。

這是Disqus留言板,您可能會看到Disqus強制投放的廣告。有時留言可能會被系統判定需審核,導致延遲顯示,請見諒。