移行作業(5/23)

はてなフォトライフの謎仕様(後述)やらNIKON COOLPIX AW100のGPS未測位時の"0″データなどに悩まされ移行のペースが落ちています。移行元のデータが存在していると旧URLへのリンクが残っていてもエラーにならないため少し早いですが先行してはてなフォトライフの2017年以前のデータを削除しました。削除の主な目的はこれですけど昨日・今日でわかっただけで以下の謎仕様があります。

1. データの内部はPNGなのに拡張子".jpg"でサイズを縮小した画像を保存している。元のオリジナルデータのみ.pngを保持。これは.jpgデータを自動処理しようとしてはまりました。具体的にはPython3向けのPillowライブラリが以下のエラーで処理を停止します。

AttributeError: 'PngImageFile' object has no attribute '_getexif'

何度ファイル読み取り部分を確認してもファイル名をダンプしても中身と拡張子が不一致というのに中々気づきませんでした。
はてなフォトライフから落としてきた画像のプロパティ:
赤線のファイル名(拡張子.jpg)とファイル形式(PNG)に注目。どうしてこうなった?

2. これは以前はてなブログ方面だったかで問題になっていたと思いますけど、はてなフォトライフの設定画面上は測位情報を"非公開"と設定していても実際の.jpgファイルには測位情報が残っていてかつ測位情報付きでダウンロードできました。測位情報を残しているとは明記していますが非公開なのに公開している点には触れていません。この点については元から問題になりそうな場所(知人宅、会社周辺)での写真は公開していませんしGPSの測位精度が悪かった時代のデータが多いため平気で写真に写っている場所から数100m位ずれていたりします。

ただ、急遽作った自作スクリプトでスキャンした結果、意図せず測位情報付きで公開になっていた画像も見つかったためEXIF内のGPS項目だけ削除する処理を行ってから再度公開しようかと考えています。一方で公共施設(道の駅、高速PA/SA)、山頂、社寺周辺など写真を見ただけで一目で何処か分かるような写真の測位情報はいまさら削除するだけ無駄なので残す方針です。

3. これも最近の話では無いですけど、はてなフォトライフの動作がメチャメチャ遅い・重い。削除するだけでもえらい時間がかかりましたし、なぜかキャッシュのクリアすら非常に遅いのか1日近く経ってもまだ読めるデータもあったりします。これだけでも手間やお金を掛けてでも高速なレンタルサーバーへ移行する甲斐があるというものです。

…というわけで思ったよりも苦戦中です。