とあるブログのバックアップ術

私がブログをはじめたのは、とあるキャンプ関連のブログでした。

ここのブログはよい仲間も多く、とっても良かったのですが、
ブログの手間やバックアップや混雑やメンテナンスや・・・
そんなもろもろで今のレンタルサーバーにブログを移しました。

ブログを本格的に移し変えたのも、そういえば昨年だったっけ。。

ということで写真がバックアップできないブログサイトでの
写真のバックアップ術を載せとくのもよいかなあ、と思い、記事にしま~す。
なお、ちょっとツールも使うので自信ない方にはお勧めいたしません。
あくまで自己責任で

では、はじまりはじまり。

まず、とあるブログでは写真のバックアップが取れないというのが問題です。
これを以下のようにしてバックアップします

1. ブログにしている文章のファイルを入手する(バックアップ)
2. ツールで、この文章のファイルの画像ファイルを読んでいるリンクだけをピックアップして1つのホームページにしてしまう。
3. HomePageとして表示されれば、あとは市販(フリー)の画像の一括ダウンロードプログラムでダウンロードして保存できる。

とあるブログではMTタイプで文章のバックアップが取れます。
これをSJIS形式を指定し、バックアップをとります。
文章のバックアップなのですが、その記事に写真が多い場合は、
写真の容量が○○MB以下の単位になるようにとか、
このバックアップ後にTEXTの単位を月単位とかに区切ったほうが
これから後でいうバックアップの際にサーバの負荷が軽くすむので
お勧めです。
サーバがダウンするようなことがあると皆に迷惑になりますので。

1.TEXTのバックアップ

2. スクリプトでイメージ画像記述を抽出

1) 以下のようなスクリプトをbackup_image.vbs とか
vbsの修飾子のファイルで作ります。

'
' 2009/6 作成
' 一応トラブル無いように考えてますが
' このスクリプトで発生するトラブルにおいて責任を負いません
Dim path,arg,out_path
Dim Fs,f
Dim objOutput
Const ForReading = 1, ForWriting = 2, ForAppending = 8
'============================
' ここのディレクトリをあなたのパソコンのディレクトリ環境に合わせて
' 適当なファイル名で指定してください
 out_path = "E:\naturum_images.html"
'============================

Set Fs = WScript.CreateObject("Scripting.FileSystemObject")
Set arg=WScript.Arguments  'WshArgumentsオブジェクトを取得。
Set regEx = New RegExp      ' 文字列検索用オブジェクトの作成

regEx.Pattern = "[<>]"      ' 検索文字列を検索パターンとして指定
regEx.Global = True         ' 文字列全体を検索するように指定
regEx.IgnoreCase = True     ' 大文字・小文字は検索に影響しない

If arg.Count=0 Then 'もしオプションがついていなければ
	path=InputBox("情報を表示したいファイル・フォルダ名を入力してください。")
Else 'オプションがついていれば、一つ目のオプションをパスとして読む
    path=arg(0)
End If

If Fs.FileExists(path) Then
    Set f=Fs.OpenTextFile(path)
Else 'パスが存在しない場合、終了
    MsgBox "このパスは実在しません。"
    WScript.Quit
End If
Set objOutput = Fs.OpenTextFile(out_path, ForWriting, True)  '出力ファイルを開く
'
' TEXTの出力
'
Do Until f.AtEndOfStream
    URL = f.ReadLine
    If regEx.Test(URL) Then
       objOutput.Writeline URL
    End IF
Loop
'
' 終了
'
f.Close
objOutput.Close

2) 出力先のところのout_path = “***” はあなたのマシンの出力したいディレクトリでの
出力したいファイル名(新規)を書いてくださいね

3) このvbsファイルをファイルエクスプローラなどでアイコン表示させておいて、
先ほどのMT形式のバックアップファイルを、ドラッグ&ドロップ
すると、指定したところに指定したファイルが出来上がるはずです。

4) ただし、それだけでは完成ではありません。
とあるブログだと、httpの指定をさぼっていて、ただしくリンクできない場合がありました。
例えば 本来(わざと全角で書きます)
http://img01.hogehoge.ne.jp/usr/mimisuke/aaaa.jpeg
とかいうべきところが相対指定で
http://usr/mimisuke/aaaa.jpeg
とかで書かれているケースです。
これだと、Link表示できませんのでエディタで置換します。

詳しくは一例としてこちらなど参考にするとよいかも(爆)。
特に(2)のa)とb)ですね。

3. とりあえずうまく行ったか表示させてみる
出来上がったhtmlをIEやFireFoxでファイルを指定して表示させる
(htmlファイルをダブルクリックでもOK)と
写真が全部表示されます(時間かかりますが)。

3.表示ファイル一括ダウンロード

あとは、表示された画像全てを一括してディスクに取り込む
と言うことができればバックアップ完了です。

こういうソフトは結構あって、2年前はフリーのソフトを使ったんだけど
既に忘れていて、思い出せません(おいおい)。

今見ると、おそらくこのへんなんか
手順がここにでてるので良いかもしれない(このソフトは使ったこと無いけど)です。
どのソフトでもいいけど、ファイル名がそのまま保存されることが必要です。
(サーバ移行する時など、MTファイルをサポートするブログシステムは多いので
保存した画像を新しいサーバのファイル置き場のディレクトリにUPするとして
その際に上記MTファイルのディレクトリのところを新しいサーバのファイル置き場の
ディレクトリに置換してUPすれば今までの記事がそのまま生き返ることになるからです)

ま、ちょっと不完全なネタではありますが、
必要なお方もいるかと思い、UPしてみました。