Karakuri.com

Fintechではたらくアプリケーションエンジニアの技術録

はてなブログのフォトライフにアップロードした画像を一括ダウンロードするWPFアプリケーションをC#で開発しました

f:id:hazakurakeita:20160719010426p:plain
はてなブログにはブログのバックアップサービスがありますが、残念ながら画像ファイルのバックアップはできません。アップロードした画像はフォトライフというサービスで管理されているのですが、ブログと違うサービスのせいなのか、連動してバックアップを取れません。フォトライフにも一括ダウンロード機能はありません。今回は一括ダウンロードアプリケーションを開発しました。

FotoLifeDownLoaderについて

動作環境

  • Windows10
  • .NET Framework 4.5以上

Windows10で開発と動作確認を行っていますが、Windows7や8.1でも動くと思います。Windows7は別途.NET Framework4.5をインストール必要があります。

使い方

www.youtube.com
はてなIDとパスワードを入力し、保存先のフォルダを選択してから開始ボタンを押します。アップロードしている画像数の確認から始まり、画像数の確認が終わればダウンロードが始まります。キャンセルボタンもありますが、ダウンロードのキャンセルで画像数の確認はキャンセルできません。

ソースコード

github.com
需要があればインストーラーも作成しようと思ったのですが、需要はなさそうですね。

開発で参考にしたサイト

何度か挫折しかけましたが、1日で完成することができました。RSS取得に時間かかりました。LINQtoXMLが上手く動かないという問題に遭遇したのですが、Namespaceの指定で解決しました。この仕様は知りませんでした…。
・UIまわり
http://grabacr.net/archives/480
・フォトライフログイン認証まわり
C#によるWEBサイトへのログイン方法(ベーシック認証、クッキー認証) | 夏研ブログ
・フォトライフまわり
はてなフォトライフ上の写真の一括ダウンロード - 豪鬼メモ
・RSSまわり
c# - Xdocument and linq - doesn't cycle thru the elements - Stack Overflow
・画像ダウンロードまわり
[C#] HTTPで画像やファイルをダウンロードしてファイルに保存する (HttpWebRequestクラスを利用)