トップ «前の日記(2018/12/12 (水) ) 最新 次の日記(2018/12/14 (金) )» 編集 RSS feed

HsbtDiary


2018/12/13 (木) [長年日記]

flickr のデータを Google Photos に引っ越した

flickr が free プランの画像保存を 1000 枚までにするという話になったのでアカウントページからアップロードしてる画像を全部ダウンロードして、ローカルでは lightroom, バックアップや実際に閲覧で使う用途としては Google Photos に全部突っ込んだ。

https://www.flickr.com/lookingahead/

単純にダウンロードしただけだとフラットに 12000 枚みたいな感じだったので下のようなスクリプトを書いて雑に yyyy/dd 形式に分類した。

require 'exif'
require 'time'
require 'fileutils'
require 'pathname'

Dir.glob("data/*").each do |f|
  exif = Exif::Data.new(File.open(f))
  time = if exif.date_time_original
           exif.date_time_original
         elsif exif.date_time
           exif.date_time
         else
          p exif
          raise Exif::NotReadable
         end
  t = Time.parse(time[0..9].split(":").join("/"))
  dir = "#{t.year}/#{'%02d' % t.month}"
  FileUtils.mkdir_p(dir)
  FileUtils.mv f, File.join(dir, Pathname(f).basename.to_s)
rescue Exif::NotReadable
  next
end

手元には別にちゃんと保存してあって、重複する画像もあるんだろうけど、それらの一致を検出するよりは全部えいっと Google に預けてしまえばいいやと言う感じだったのであまり頑張らなかった。

この日記も古いところで flickr の API を使って参照している個所が結構あるんだけど、それらはじわじわと 404 になるんだろうなあ。これを適切に入れ替える手段は今のところちょっと思いつかないので後で。うーん。