fc2バックアップ用スクリプト backup_fc2.py

最終更新日時 2015年09月21日


fc2ブログのバックアップ用に作ったソフトです。xml-rpcを使用します。

免責事項:

このプログラムを使用した事によって発生した損害は、一切補償しません。 このプログラムに不備があっても、作者はそれを訂正する義務を負いません。

この利用条件に同意出来る場合、ダウンロードしてください。

まぁ、実際たいしたことはしていないので大したことは起きないはずなのですが、一応。

特徴

注意点

使い方:

コマンドラインから実行します。python2系列 2.7以上が必要です。 なお、パスワードはgetpassモジュールを用いてbackup_fc2.py起動後に入力する仕組みです。入力中、パスワードは一切表示されないため、正しく入力できているのか確認できませんがこれまたセキュリティのためと思ってください。

参考リンク:日本Pythonユーザー会 pythonダウンロードページ (windows版・mac版もあります。記事作成時点でダウンロードできるpython2.x系列の最新バージョンは、2.7.3です。このプログラム自体はubuntu linux 14.04.1のpython 2.7.6で作成されました。)

このソフトを使ってダウンロード(バックアップ)されたfc2ブログのファイルは、--destdirオプションで指定したディレクトリの下に

ので、このバックアップしたデータを復元するには、現時点ではpythonの知識が必要です。

コマンドライン引数の一覧

usage: backup_fc2.py [-h] --destdir DESTDIR [--blog-id BLOG_ID]
[--conffile CONFFILE] [--blog-url BLOG_URL]
[--wait-image-period WAIT_IMAGE_PERIOD]
[--entry-download-span ENTRY_DOWNLOAD_SPAN]
[--wait-entry-period WAIT_ENTRY_PERIOD] [--start START]
[--end END] [--from-last] [--only-xmlrpc]
[--process-cache] [--force-reload]

optional arguments:
-h, --help show this help message and exit
--destdir DESTDIR 出力先ディレクトリ
--blog-id BLOG_ID fc2ブログID
--conffile CONFFILE 自動化用設定ファイル
--blog-url BLOG_URL fc2ブログURL(省略可・ブログIDとブログURL
が異なる形式の場合に使用)
--wait-image-period WAIT_IMAGE_PERIOD
画像ダウンロード毎の休憩時間(秒数)
省略時3秒
--entry-download-span ENTRY_DOWNLOAD_SPAN
記事ダウンロードの休憩までの件数
省略時10件
--wait-entry-period WAIT_ENTRY_PERIOD
記事ダウンロードの休憩時間(秒数)
省略時60秒
--start START 開始記事番号(省略で1から)
--end END 終端記事番号(省略時、最新の記事まで)
--from-last 最後にバックアップした記事の次の番号
から開始
--only-xmlrpc xmlrpcからのダウンロードのみを実行
(通常は指定しない)
--process-cache fc2側ではなく PCに既にキャッシュされた
xml生ファイルを走査 (通常は指定しない)
--force-reload キャッシュに保存されているファイルも
省略せず強制的に再読み込みさせる
(通常は指定しない)

自動化用設定ファイルの書式

自動化用設定ファイルはjsonファイルで、中身は以下のようになります。

{
"BLOGID" : "foobar",
"USERID" : "foobar@hogehoge.boo",
"PSWD" : "thisisthepassword",
}

BLOGIDは、ブログのID=fc2ブログのユーザー名で、通常はブログ名となります。例えば私のfc2ブログであればBLOGIDはdothiko、結果としてfc2ブログのURLはdothiko.fc2.blogとなります。 USERIDはfc2ブログを登録したメールアドレスで、PSWDはパスワードです。

平文で書くため、くれぐれもセキュリティには十分に配慮してください。できれば、手動でパスワードなどを入れたほうがよいでしょう。自動化用jsonファイルは、自宅サーバによる定期バックアップ等のためにあります。

自動化設定ファイルを--conffileオプションで指定した時、--blog-idオプションはコマンドラインのものが優先されます。

使用例

dothikoさんのブログを1から50番までの記事を/tmp/fc2data以下のディレクトリにバックアップします。 通常はこれでOKです。

python backup_fc2.py --destdir /tmp/fc2data --blog-id dothiko --start 1 --end 50

古くからのfc2ブログユーザーで、ブログURLが最近のもの(ユーザーID.blog.fc2.com)とは異なっている場合。

python backup_fc2.py --destdir /tmp/fc2data --blog-id veteransan --blog-url nobody.blog666.fc2.com --start 1 --end 50

パスワードとブログID,xml-rpc用のメールアドレスを/home/hoge/myconf.jsonに入れて、前回バックアップ終了時以後の記事を全てバックアップします。自動定期バックアップ向けです。この場合、myconf.jsonのユーザー権限を適切に設定し、セキュリティに十分配慮してください。

python backup_fc2.py --destdir /tmp/fc2data --conffile /home/hoge/myconf.json --from-last

バージョン情報

1.2

バグフィックス、--user-idの--blog-idへの名称変更と、
--blog-idオプションが設定ファイルに優先されるよう仕様変更

1.0

初期リリース

ダウンロード

ダウンロードする場合は同意チェックを押してから「ダウンロード」ボタンをクリックしてください。

ダウンロード backup_fc2_20150921-0002.zip

md5sum : 68fec37cef71b1bb4df036eca870c587

利用規約・条件に同意します

inserted by FC2 system