ナチュログにアップした画像を一括ダウンロードする方法

この記事は約10分で読めます。
スポンサーリンク

こんにちは、kyan(@sumibi_kyan)です♪

本日は、kyanが2017年にwordpressへ引っ越しする際に使った、ナチュログのサーバに保存している画像ファイルを一括ダウンロードする方法をご紹介します!

スポンサーリンク

イントロダクション

こんな方にオススメ!
・ナチュログで溜まりに溜まった画像のバックアップを取りたい方
・ナチュログから他ブログへ引っ越ししたい方

ナチュログの標準機能では一括ダウンロードできない

WordPress移行にあたってネックのひとつは「画像を漏れなく移転させる方法」でした。

掲載記事で使用した画像を適宜ローカル(PC)に保存していましたが、8年間運用してると全て保管してるかは自信ありませんでした。またファイル数も多く(約4000)、さらには同名ファイルの場合にナチュログ側で自動的にリネームして登録されていたため、移転のタイミングで一括ダウンロードしてローカルのデータと同一版にしたいと考えました。

しかしナチュログでは、画像の一括アップロードは(裏技的に)できても、一括ダウンロード機能は実装されておらず、一つひとつ手作業でダウンロードするしかありませんでした。

とはいえ4000ものファイルを手動で行うのは、気が遠くなるしケアレスミスの元。

どうにかできないかと試行錯誤した結果、必要な画像のリストを作り、ソフトで一括ダウンロードする方法が最もうまくいったので、今回はその方法をご紹介します。

本方法はバックアップファイルのリンクから画像を辿ってくため、「画像をアップしたけど実際にはブログ記事で使っていない」場合、具体的にはストレージ的な利用をされてる方には役立ちません。

使うソフト

紹介するのはWindows版です。Mac版は…よいソフトがあれば教えてください😃

秀丸エディタ

Windowsではメジャーなソフトです。
正規表現が使え、かつ重複行削除ができるなら他のソフトでも問題ありません。

秀まるおのホームページ(サイトー企画)-秀丸エディタ

NorobusaDownloder

ダウンロードリストを読み込ませるタイプのダウンロードソフトであれば、他でもイケると思います。

Norobusa Downloaderの詳細情報 : Vector ソフトを探す!
スポンサーリンク

ダウンロードリストを作成する

ログファイルを出力する

・ナチュログの管理画面にログインし、TOP画面左下にある[ブログの設定]-[読み込み・書き出し]を選択して、出力画面を表示します。

管理画面から「読み込み・書き出し」を選択

・以下の項目を確認して、[書き出し開始]ボタンを押します。
文字コード EUC-JP
書き出し対象年 移行分を範囲選択
書き出し対象カテゴリー すべて

所定の項目を選択し、「書き出し開始」をクリック!

・任意のファイル名で保存します。

出力したファイル(一部)

ログファイルから画像URLのみを抜き出す

リンクと画像の抜き出しツール」サイトより、ログファイルから画像リンクのみ抽出してくれる機能を提供しているので、ありがたく使わせてもらいます。

①出力したログファイルを上記ツールの「ソース(テキスト)」にペーストする
②「URL検索」ボックス内の「画像」ボタンを押す
③「整理」ボックス内の「並替」ボタンを押す
④URLリストが抽出されるので、「テキスト出力」ボックス内の「テキスト一覧」ボタンを押す
⑤「ソース(テキスト)」欄に画像ファイル一覧が出力されるので、コピーして適当なテキストファイルにペーストし保存する。

①~⑤の順番で操作します

後述するテキストエディタの置換操作でも代替は可能です。

ファイルを修正してダウンロードリストを作成

移行が不要な画像リンクが含まれる行を除外する

前項で出力されたリストにはダウンロード不要なデータが含まれてるので、エディタの置換機能を使って除外します。

まず、ダウンロードしたい画像は以下のURLのファイルです。

http://img0*.naturum.ne.jp/usr/***/***.jpg
usr/***/***.jpg
※例示したURLのうち「*」の部分はサーバ名やファイル名です(ユーザ毎に違います)。
※kyanの時代は上記2種類でしたが、現在は他にもまだあるかもしれません。

続いてダウンロード不要な画像ですが、これは各自のブログに貼り付けてる画像リンクによります。
kyanの場合、以下を除外しました。

・ナチュラムが提供する顔文字画像
・各種アフィリエイトが提供する画像
・除外方法

以下は上述したエディタソフト「秀丸」にて操作します。

[検索(S)]-[置換(R)]で条件ボックスを開く
[正規表現(R)]のチェックボックスにチェックがついていることを確認する
③検索ボックスには下記行を、置換ボックスは空欄(削除のため)で、[全置換(A)]ボタンを押す
<以後、下記リスト全ての置換を行う>

不要なリストは行ごと削除するので、置換先は空欄になります

・除外する条件(削除したいURL)の記述式
^.*<除外したい画像ファイルが保管されてるサーバ>.*\n

正規表現で<除外したい画像ファイルが保管されてるサーバ>に保管されてる全ての画像ファイル名をリストから削除するという意味を記述しています。

・正規表現の実例

kyanが実際に除外した対象を、同じように削除する正規表現は以下のとおりです。

・ブログ記事で使った顔文字画像を除外する

^.*http://blog.naturum.ne.jp/.*\n

・ナチュラムアフィリエイトの画像を除外する

^.*http://www.naturum.co.jp.*\n

・楽天アフィリエイトの画像を除外する(一例)

^.*https://hbb.afl.rakuten.co.jp.*\n
^.*http%3a%2f%2fthumbnail.image.rakuten.co.jp.*\n
^.*http%3a%2f%2fimage.rakuten.co.jp.*\n

・アマゾンアソシエイトの画像を除外する(一例)

^.*https://images-fe.ssl-images-amazon.com.*\n
^.*https://images-fe.ssl-images-amazon.com.*\n
楽天やアマゾンは画像URL形式が時代によって変わっているのと、各自でそれまでどういった外部サービスを利用しているかによって増減するので、各自で抜き出した画像URLリストを見て除外してください。

相対パスにURLを付加する

昔の記事の中には、画像URLが一部省略されてる場合があります(相対パス)。
これではダウンロードできないため、相対パスは省略なしのURL(絶対パス)に変換する必要があります

パス
絶対パス http://img0*.naturum.ne.jp/usr/***(ユーザ名)/***.jpg(ファイル名)
相対パス usr/***(ユーザ名)/***.jpg(ファイル名)

kyanの場合、絶対パスで表記されてる画像ファイルから、画像は「img02」サーバに格納されていると思われたので、「http://img02.naturum.ne.jp/」の無い行の先頭に「http://img02.naturum.ne.jp/」を付与しました。

・付加方法
[検索(S)]-[置換(R)]で条件ボックスを開く
[正規表現(R)]のチェックボックスにチェックがついていることを確認する

検索ボックスに

^(?!.*http://)(.+)

置換ボックスに

http://img02.naturum.ne.jp/\1

をそれぞれ入力し、[全置換(A)]ボタンを押す

ブログ記載の文字列をそのままコピペすればいけるはず

重複行を削除する

NorobusaDownloderを使用してダウンロードする場合、重複ファイルは自動で削除してくれるので本作業は不要です!

同一画像が複数の箇所や記事で使われてる場合、重複行が発生するので削除します。
秀丸エディタのマクロ機能を使い、公開されてる重複行削除マクロを実行します。

秀まるおのホームページ(サイトー企画)−重複行を削除する簡易マクロ Ver.2.13

方法
①上記URLを開き、「erasesameline213.zip」をダウンロード
②ダウンロードしたファイルを任意のフォルダへ解凍
③秀丸エディタの[マクロ]-[マクロ実行(X)]-②で解凍したマクロファイルを選択
④[E 実行]を押す

完成したファイルに任意の名前をつけて保存する

これでダウンロードする画像ファイルのリストが完成しました!

完成した画像ファイルリスト(一部)

スポンサーリンク

NorobusaDownloderで画像をローカル環境に保存する

いくつかのダウンロードソフトを試した結果、「NorobusaDownloder」というフリーソフトが最も素直に動作したので、こちらを使用して説明します。

①「NorobusaDownloder」をインストールする
Norobusa Downloaderの詳細情報 : Vector ソフトを探す!
②任意のフォルダへ解凍し、「Norobusa Downloader.exe」を実行する
③[F2]ボタンを押し、③で保存したファイルを選択

作成したリストを選択します

④ダウンロードリストファイルの右横にある「+」をクリックする

リストファイルを選択後「+」ボタンを押すとファイルが読み込まれて表示されます

⑤保存フォルダの横にある歯車ボタンをクリックし、画像の保存先を選択する

画像の保存先フォルダを選択します

⑥左上の再生ボタン(ダウンロード実行)を押す

※このままだと「ログファイルが選択されてません」と出るので、ダウンロード履歴やエラー履歴を観たい人は別途設定してください。
(kyanは特に困らなかったので設定しませんでした)

各種ログをとるなら保存先を指定、不要ならそのまま「はい」を選択します

※kyanの環境では、1000ファイルをDLし終える迄3分ちょっとでした。

所要時間

約1時間

<内訳>
ソフトウェアのインストールに10分、
ログファイルのダウンロードに10分、
ファイルの整形に30分、
ファイルのダウンロードに15分(4000ファイルの場合)

本記事に記述のない外部サービスをリストから削除する場合には、もう少し時間かかるでしょうか。

ちなみにkyanは試行錯誤しながらこの方法にたどり着いたため、4時間くらいかかった記憶があります。
特に正規表現で何度も詰まりました(1文字でも間違ってると期待した動きをしてくれないため)。

記事に書いた置換処理や重複行削除は、現在だとマクロを作成して自動処理しています。
なので、いま同じことをするならば10~15分と思います。

コメント

いかがでしたでしょうか。
技術的な色彩が濃い記事なので、読者を置き去りにしてないか心配です😅

画像数が多い方にとっては紹介した方法が速いと思いますが、PCに慣れない方は敷居が高いかも…?
トータルで100ファイル位なら手作業でポチポチ保存した方が早いかもしれません。

ナチュログから他ブログへ移行予定の方だけでなく、大切なデータのバックアップ手段としても有用ですので、困ってる方は参考にしていただけましたら♪

本日も読んでいただき、ありがとうございました。

コメント