Windowsでファンブログの全記事バックアップスクリプト

2014年1月22日にA8.netのファンブログはSeesaa Blogのシステムをベースにして生まれ変わりました。よってファンブログ関連の記事は今では当てはまらない可能性があります。新しいファンブログのカスタマイズは別ブログ「ファンブログ テック」で詳しく書いていますので、そちらをご覧ください。

この記事は、技術のタマゴ「ドメイン以下のURLを完全に保持しながら無料ブログから移転する方法・予告」のコメント欄へ投稿した内容と同じです。

おそらく数百記事程度なら、数分で全記事のバックアップが取れると思います。


WSH(Windows Script Host)というWindowsの過去の遺産があって、それを使ってスクリプトを書いてみました。このスクリプトで、Windowsを使って、現在のファンブログから記事のバックアップが取れます。ただ、残念ながら以前もらったコメントはもう表示されてないので、取れません。

消えたコメントのサルベージに関しては、この記事の後半に書いてあります。

ソースコードと使い方

var name='ayzfqir5';
var min=1;
var max=20;

for(var i=min;i<=max;i++){
	var xhr=WScript.CreateObject('Msxml2.XMLHTTP');
	var fd=WScript.CreateObject('Adodb.Stream');

	xhr.Open('GET','http://fanblogs.jp/'+name+'/archive/'+i+'/0',false);

	xhr.SetRequestHeader('Pragma','no-cache');
	xhr.SetRequestHeader('Cache-Control','no-cache');
	xhr.SetRequestHeader('If-Modified-Since','Thu, 01 Jan 1970 00:00:00 GMT');

	xhr.Send();

	fd.Type=1;
	fd.Open();
	fd.Write(xhr.responseBody);
	fd.Savetofile(i+'.html',2);
	fd.Close();
}

WScript.Echo('finish');

まず、fanblogというフォルダを作ります。

次に、上のスクリプトをメモ帳にコピーして、fanblogフォルダの中にbackup.jseという名前で保存します。

この時に使うのはメモ帳です。WORD(ワード)を使ってはいけません。

保存した、backup.jseの1行目
var name=’ayzfqir5′;
のayzfqir5を自分のブログのhttp://fanblogs.jp/xxxxxx/のxxxxxxに変更します。

2行目の
var min=1;
の数字を読み込みたい記事の最小値に変更します。(通常は1でよい)
http://fanblogs.jp/xxxxxx/archive/123/0の123の部分のこと

3行目の
var max=20;
を最新記事の数字に変更します。
http://fanblogs.jp/xxxxxx/archive/123/0の123の部分のこと

たとえば、http://fanblogs.jp/parthaken/の1番目の記事から10番目の記事まで取得したい場合は下のようになります。var name=’parthaken‘;
var min=1;
var max=10;

修正したらbackup.jseを上書き保存。
そして、backup.jseをダブルクリックすると、記事の取得を開始します。

取得が終わると、finishと表示されるので、それまで待ちます。1000記事くらいなら10分以内に終わると思います。finishと表示されたらOKを押して終了です。これで、fanblogフォルダに記事がページごとに保存されています。

ただし、記事がない欠番ページも普通に取得します。これは404を返さないファンブログの仕様です。ファイルを開いて記事がなければ存在しない欠番記事ということです。

同じページの再取得

同じページを2回取得すると、重複した別ファイルを作らずに上書きします。記事を書き直したりしたときは再取得(上書き)してください。

もし、ファンブログがコメント欄を復活させて、以前のコメントが表示されるようになったらコメントも取得できます。その時は再取得して(コメントのないページに)上書きしてください。

追加取得の方法

記事を追加した時は追加取得できます。たとえば前回取得した記事が1~100までで、その後、2記事増えた場合は

var min=101;
var max=102;

とすれば、http://fanblogs.jp/xxxxxx/101/0からhttp://fanblogs.jp/xxxxxx/102/0までを追加取得します。

1ページだけ取得したい場合

追加した記事が1つだけの場合、minとmaxに同じ数字を書いてください。

var min=101;
var max=101;

なら、http://fanblogs.jp/xxxxxx/101/0の1ページだけを取得します。

コメントのサルベージ

上記の方法で記事は取得できますが、これまでにもらったコメントは表示されないので、取得できません。

先日「消えたコメントはInternet Archiveを探せ!」という記事を書きましたが、確かめて見たら、Internet ArchiveよりGoogleのキャッシュの方がコメント保存率は高いことがわかりました。

Google検索で
site:fanblogs.jp/xxxxxx/archive
と打ち込めば一覧が表示されます。(/archiveまでつける)

xxxxxxは、自分のブログのhttp://fanblogs.jp/xxxxxx/の部分に書き換えてください。

検索結果の記事タイトルの下にURLが出ますが
fanblogs.jp/ayzfqir5/archive/13/‎ ▼
のように▼マークが出た記事は▼をクリックすればコメントも含めてキャッシュが読めます。


上のスクリプトで取得した「天女のはごろも」全データです。
http://api.dwm.me/fanblog/fanblog_nachi410247.zip

ZIP圧縮済です。解凍するとfanblogというフォルダに全記事が入っています。

ファイルは1.htmlから388.htmlまでありますが、上に書いたように欠番記事もファイルになっています。1.htmlから11.htmlまでは欠番なので、開いても記事はありません。

最初の記事は12.htmlの「自転車がぬすまれた!保険金でるの?」
最新の記事は388.htmlの「【FXブログ】人気コラムとご挨拶」

今、ファンブログで見られるものをそのまま落としているので、残念ながら、コメントは一切ないです。

消えたコメントはInternet Archiveを探せ!

ファンブログのコメントとトラックバックが削除されましたが、もう戻ることはないでしょう、多分。本当に復旧すると思って待っている人は、諦めた方がいいのではないかと思います。でも、消えてしまったコメントが読める方法があります。

関連記事:Windowsでファンブログの全記事バックアップスクリプト
追記:この記事で紹介しているInternet Archiveより、上の関連記事中で説明しているGoogleのキャッシュの方がコメント保存率が高いです。

ファンブログのコメントとトラックバックが削除されましたが、もう戻ることはないでしょう、多分。本当に復旧すると思って待っている人は、諦めた方がいいのではないかと思います。

自分としては、別の記事「消えたコメントのことは嘆かない奴ら」にも書きましたが、この状態は大歓迎。今後は何でもいいから書いてありさえすればコメントしに人が来るということはありません。コメントをする仲良しではなく、記事を読む読者を増やさないと、誰も来なくなるでしょう。

とはいえ、コメント出来ないのはともかく、今までのコメントが戻らないのは辛いです。新しいコメントとトラックバックは不要ですが、すでにもらったコメントは消さないで欲しかった。自分はバックアップを取れているから、本気で怒っていませんが、がっかりしている人もいるかもしれません。

でも、いろいろな人の意見を読んだけど、コメント出来ないことに腹を立てている人ばかりで、消えたコメントの事を悲しんでいる人って見つからなかったんだけどね。それについては上の記事で書いたから、ここでは触れない事にします。

「新しいコメントとトラックバックは不要ですが」と書きましたが、コメント欄をつけたければ自分でつければいいと思います。参考記事:ファンブログのコメント欄に「DISQUS」を設置

Internet Archiveにデータを探す

場合によっては、失ったコメントを読めるかもしれません。その場所はInternet Archiveです。

例えばマスクドライダー17号さんの場合なら、2013年01月17日の18:38:25の時点でのログが保存されています。

サイドバーの最新コメントをクリックすると、「マスクドライダー17号|2013年01月18日(金) 00:58」のコメントが出てきます。ログは17日18:38:25までのはずなのに、18日00:58のコメントですが、日本時間とグリニッジ標準時の時差は9時間なので、正常です。つまりInternet Archiveの時刻に9時間足したのが日本時間です。

以前、Internet Archiveの使い方は記事にしているので、それを参考にご自分のブログを探してみてください。

その他、参考になるかもしれない記事

バカは自分の言っていることが理解できてねーからバカなんだよ!

ひとつ前の記事(情報商材Aの宣伝記事)のタイトル

月の売上が100万円を超える事が出来るビジネス

次の記事(情報商材Bの宣伝記事)からの引用

いきなり、「月100万円稼げます!」と言われても、信用なんてできるはずがありません。

笑止。自分で前の記事(商材A)を否定してるじゃねーか!バーカ。

中身も確認しないでコピペだけして、信用されるわけがねーだろ。信用されねーから、誰もお前のブログでは申し込まないよ。

自分のブログから売れさえすればいい、自分に報酬が入れば、買った奴が儲かろうが儲かるまいがカンケーねーって思ってんだろ?

こういうバカのブログはゴミなだけだから消えればいいのに。本当に儲かるなら自分でやってフェラーリ乗ってろ、バカが。

本当にアタマ悪いんだろうな。でも、騙すのを前提に相手を信用させる詐欺師にはなれないだけマシかもな。

本人からのコメントを、楽しみにお待ちしています。

消えたコメントのことは嘆かない奴ら

コメントできないなら、ファンブログから出て行く!と騒いでいる人は大勢見つかったんだけど、今までに交わしたコメントが見られないことを嘆いている人が全然いない違和感。

これからコメントをもらう手段は考えれば対処できるわけで、それよりも今までのコメントが見られなくなったことの方が、ずっと重要な問題な気がするんだけど。

幸い自分は、こないだ公開したスクリプトで、今までのコメントやトラックバックを含め、全部抽出できていたのでよかったけれど、そうでなかったらコメントが消えたのはショックだったと思う。

消えてしまったコメントのことを嘆いている人がいないのは何なんだろう。

今まで、これだけ不調だったファンブログに残り続けておきながら、コメント欄が消えたその日に大勢移転している。コメント欄が消えた日から、システムが非常に軽快、順調に動き始めたのにも関わらず。

彼らにとっては、コメントというのは会話なんだろうな。自分にとっては、コメントというのは手紙に近い感覚だ。

会話は、口から出て行くごとに消えていく。話した瞬間に過去のものになるのだから、消えて当たり前。そういう感覚なんだろうか。人のコメント欄を見るたびに、なんで毎日同じようなくだらないことばかり書き込むんだろうかと疑問に思っていたけれど、そういう感覚なのかもしれない。

手紙であれば、暑中見舞いや年賀状ならともかく、普通は用件があって送るもの。暑中見舞いや年賀状がありがたいのは年に一度だからであって、毎日来たらありがたみはない。用件もないのに、毎日毎日コメントしている彼らは何なんだろうと思っていたが、手紙という感覚ではなかったんだな。

そして、コメントできないことに腹をたて、不満だけを口にしてブログを移転する。今までの財産はこのブログで出来た出会いなわけだけど、このブログには感謝もせずに去っていく。

今回の長かったトラブルは確かに問題だったけれど、これでメンバーの人間性が、ふるいにかけられた気もする。感謝もせずに去っていく者。

正直、自分はブログと言うのは情報発信が主なものであって、コメントというコミュニケーションは付加的なものだと感じている。そうではなく、コメントという会話だけを楽しみたい者は、これからみんな去っていく。

くだらない記事でも何か書いてあれば、コメントをしに人が来るということはなくなった。記事がつまらなければ人は来ない。

自分自身は、このブログからよそへ拠点を移すつもりでいたが、トラブルがなくなり、「あしあと」めぐりやコメントまわりというわずらわしい連中も来なくなったファンブログは、天国な気がする。

移転の準備を進めていたが、さあどうしたものか。

ファンブログのコメント欄に「DISQUS」を設置

2014年1月22日にA8.netのファンブログはSeesaa Blogのシステムをベースにして生まれ変わりました。よってファンブログ関連の記事は今では当てはまらない可能性があります。新しいファンブログのカスタマイズは別ブログ「ファンブログ テック」で詳しく書いていますので、そちらをご覧ください。

無料のサービスで「DISQUS」というのがあります。独自のコメントサーバーを持ったコメント投稿サービスです。これを、コメント欄を閉鎖中のファンブログにつけてみました。

自分自身は「DISQUS」にアカウントを作ったのは、ずいぶん前なので登録方法などは忘れました。「DISQUS」で検索すればいくらでも情報は出てくるので調べてください。

ファンブログへの設置方法

以下は自分がやった方法です。不足していたりする手続きがあるかもしれません。わかる方は補足願います。

まず、登録した情報で「DISQUS」にログインする。

管理画面いちばん上の右側にある「Dashboard」をクリック。下の画面に変わるので、「Add」をクリック。

手続き1

すると下の画面になります。

左側の「Site URL」に自分のブログのURLを登録。「Site Name」にブログの名前を登録。「Site Shortname」はよくわからないので、適当にアルファベット入力でごまかしました。わかる人は補足してください。

手続き2

以上をこのブログに当てはめると
「Site URL」は 「http://fanblogd.jp/ayzfqir5/」
「Site Name」は「ここにブログの名前を入れます」
「Site Shortname」は「ayzfqir5」(ただしテキトー)
となります。

この3つを入力したら、右側の「Continue」をクリック。また画面が変わります。

下の画面が出たら左のいちばん上にある「Universal Code」をクリック。

手続き3

「Universal Code」をクリックすると、下の画面になるので「Place the following code where you’d like Disqus to load: 」と書かれた部分のソースだけをコピーします。

「How to display comment count」の下にもソースがあるのですが、コメント数表示用のようなので無視しました。必要な方は適宜対応してください。

手続き4

以上で、必要なソースが入手できたので、ファンブログの「スタイルの編集」->「1記事」を選んで、記事の下に貼り付ければ完了です。

このブログは自作スキンなので正確にはわかりませんが、ファンブログ純正スキンの場合
</div><!– entry –>

<BlogEntryIfAllowPings>
の間に貼り付ければいいのではないかと思います。

</BlogEntryIfAllowEntryRatings>
<div class="entryInfo">投稿者:<a href="{$BlogEntryWriterUrl$}" ...(この行長いので省略)
</div><!-- entry -->
<!--ここにDISQUSのソースを挿入-->
<BlogEntryIfAllowPings>
<h3 id="trackbackTitle">トラックバック</h3>

動作についてはこの記事のコメント欄で確認してください。

DISQUS導入後の設定については「Disqusの設定について | たなブログ WordPress入門講座」を参考にするのが、とてもわかりやすくてお薦めです。

今は時間がないので、これ以上書けませんが、試した方は情報をフィードバックしていただけると幸いです。

コメント欄がなくなった事に関して、よそのブログのコメント欄やら、自分のブログの記事やらで、くだらねー文句を言ってるんだったら、自分たちでアイデア出し合って、出来る方法を考えたほうが発展的だと思うんですが、どうですかね?