はてなブログに投稿した「画像データ」を、
・ハッキングなどの『万が一』に備えてバックアップしておきたい、
・WordPressなどのCMSに引っ越したいのでデータをダウンロードしたい、
そう言った事はあるかと思います。
やり方は「はてなブログ バックアップ 画像」などで検索すると幾つか出て来ますが、
はてなフォトライフの画像を一括ダウンロードする - (旧)Smart-PDA.net 管理者の日記
こちらは記事が10年ほど前のもので、記載の「Website Explorer」は現在の「はてなブログ」では対応してませんでした。
はてなブログ内の画像を一括でダウンロードする簡単な方法 - SEOログ
こちらの方法で概ね出来ますが、一部うまく行かなかったのでそれらを補完したものを自分用メモとして記事を書いておきます。
1:記事データのバックアップ
他のサイトでも書かれているように、まずは「はてなブログ」の「設定」に行き、
「詳細設定」の下の方にある「エクスポート:記事のバックアップと製本サービス」を選択します。
「エクスポートしなおす」をして再読み込みさせたら「ダウンロードする」で記事データを保存します。
2:「サクラエディタ」で画像のURLのみを抽出
まずは「サクラエディタ(無料)」を入手、インストールして下さい。
老舗のテキストエディター「サクラエディタ」|窓の杜
インストールしたら先ほどダウンロードして来た記事データを
「サクラエディタ」で開き、「編集」>「Grep」へ進み、
下記のように設定します。
・現在編集中のファイルから検索
・正規表現
・該当部分
・結果のみ
のチェックボックスをチェック。
条件テキストボックスへは下記をコピペします。
※他のサイトだと暗号化通信の「https://cdn-ak~」を指定してますが暗号化通信してない「http://cdn-ak~」を含んでいなかったので、古い記事の画像を取得できませんでした。
なので上の検索条件にはそれを含めてます。
「検索」を押して処理を進めると下記のような結果が出力されます。
黄色い「画像のURL」ではない冒頭の部分と、一番最後の行を削除し「名前を付けて保存」をします。
保存の際に「SJISの文字コードで保存すると一部の情報が失われる」と言われますが気にせずに「SJIS」で保存して下さい。
(次の項目のExcelがSJISじゃないと開けないので)
3:「Excel」で「画像URL」以外の部分を削除
保存したファイルを「Excel」で開きます。
※Excelの「開く」から開く際「Excelファイル以外が表示されない」ので右下の「全てのExcelファイル」を「すべてのファイル」にしてテキストファイルも表示出来るようにします。
開いたらウィザード形式で質問されますが、全て「次へ」>「完了」して下さい。
開かれるとこのような感じになると思います。
1行目がURL、2行目以降がブログでALTタグなどで指定したテキスト情報で行間はタブで区切られてます。
1行目以外の情報があるとダウンロードできないので削除していきます。
1行目以外をすべて選択し、右クリック>削除して下さい。
次に「"(ダブルクォーテーションマーク)」が残っているのでこれを「置換」で消していきます。
「検索と選択」>「置換」で「検索する文字例」に半角のダブルクォーテーションマーク( " )を入力し、「すべて置き換え」を実行します。
完了したらファイルを「テキスト」で保存します。
1行目以降の情報やダブルクォーテーションマークが残っている行は上手くダウンロードできず「中身がカラのデータ」が生成されるので注意。
4:画像の一括ダウンロード
画像を一括でダウンロードするためのソフト「DS Downloader(無料)」を入手、インストールして下さい。
DS Downloader|ベクター
インストールしたら「オプション」タブから「ダウンロード先」と「最大登録数」を指定します。
「最大登録数」は先ほど保存したテキストファイルの行数よりも大きい数値を入れて下さい。
先ほど保存しておいたテキストファイルを開き「すべて選択(CTRL+A)」>「コピー(CTRL+C)」したものを
「DS Downloader」の「リスト」タブに貼り付けて下さい。
「最大登録数」が多いと処理が固まりますが、暫くすると直ります。
リスト登録が完了したら「Download」を押して処理を開始して下さい。
暫くするとすべての画像がダウンロード完了となります。
画像ファイルは、
・20141206192722
・20150201232753
・20160107231939
・20170517121744
・20180525051105
・20190907165906
・20200116085840
このように「年号+日付」になってるので「年号」ごとにフォルダ分けしておくと管理しやすいかもしれません。
また、エクスポートしたデータ内の「画像のファイル名」は「新しいものから古いものの順」に並んでいるので、既にDLした画像を月別や年月に管理しておけば、「エディタで抽出>Excelで置換」した後のデータから「すでにダウンロード済の部分は削除」してから「DS Downloader」に放り込めば必要な分だけダウンロードできるので手間が減ると思います。
(もし画像ファイル名が日付順に並んでいなくてもExcelで名前順に出来ますし)
参考になれば幸いです。