title_parttitle_parttitle_part
静岡県浜松市であれこれソフトを開発している A.K.I Software のブログです。日々の開発日記やサーバー・セキュリティ関連の話題なども掲載。
<< 2024/05 >>12345678910111213141516171819202122232425262728293031
《《《 ネットワーク機器の購入は Amazon で! 》》》
2007/09/25 BLOM正式版リリース!
BLOM のダウンロードは こちらからどうぞ。

Powered by BLOM Movable Type形式からのインポート doblog からの移行
小さくも大きくも閉じたりもしません
09/03/17 16:06 / BLOM

先日、doblog で障害が発生した記事を書いたのですが、データの復旧?は出来たらしくデータのダウンロードを行うことができるようになっています。
blom を開発する前は doblog にいましたのでデータをダウンロードした所、Movable Type 形式のようです。

丁度知人も doblog から逃げ出して blom を利用したいという話があったので軽くコンバーターを作成してみました。

・・・が

Movable Type を自分でインストールしたことは一度も無いのですがちょっとフォーマットが変です。
セパレータが ----- や -------- なのですがどうやらエスケープされていません。記事中に同一のデータがあった場合はそこでおかしくなる訳です。

ちょっと話が脱線しますが、SMTP でメールを受信する際に本文の終わりとして [CR][LF].[CR][LF] を入れるようになっています。(CR/LF は改行です)
当然本文の中にも現れる可能性がありますので、単独行で存在する . (ピリオド)は ..(ダブルピリオド)にエスケープいわゆる変換を行うように決められています。

話は戻りまして、これは絶対に必要な処理なのですが、Movable Type はこれを行っていないようです。
直接バックアップした内容からコンバーターを作成していましたので「まさかエスケープが無いなんて無いよね?」と思いこんでいましたので、微妙にハマりました(^-^;

画像も img タグ+相対パスで直接記述されていますので、そのまま持ってくるのもキツイです。

結局セパレータに関しては手動で直して、画像については手作業で直せるレベルではありませんので、取得した記事本文のタグ解析を行い、直接記事内容を置換して変換するようにしました。
(ただ、doblog のバックアップがおかしいのか、画像が無かったり、カテゴライズされていない記事があったりとまったくもって意味不明)

jawk や Perl やツールを作れる方は対処はそれほど大変では無いと思うのですが、それ以外の方はハマりそうな仕様です。

蛇足ですが、blom のデータファイルは1記事につき1ファイルとなっており、記事中に画像が利用されている場合は記事に対して1つの画像を管理するファイルがあります。
記事中の画像に関しては、マクロタグの <BIMAGE> というタグで埋め込まれており、これを使って画像の管理を行っています。
記事は cindex.txt(CSV形式)で管理されており、全ての記事にユニークなIDが割り振られており、上記の記事ファイルや管理ファイルは、このID+拡張子というファイル名になっています。
それぞれが独立して管理されていますので、バックアップは面倒なのですが(記事が1000件あった場合、最大2000ファイル存在することになります)
ファイルが壊れた場合の障害は最小限に留まります。
ファイルのタイムスタンプでバックアップすればバックアップの手間は最小限になりますしね。FTPで直接バックアップ/リストアできるのもメリットかもしれません。

閑話休題

blom の形式はいいのですが、doblog から移行する人は苦労しそうですね・・・

[更新日付:2009/03/17 16:06:17]
トラックバックを見る(0)
Log Link [https://akisoftware.com/cgi-bin/blom.exe?akisoft+sl+8347474ebf76e3bc89c02f3f1ec5359eef55baea]
TB Link [https://akisoftware.com/cgi-bin/blom.exe?akisoft+tb+8347474ebf76e3bc89c02f3f1ec5359eef55baea]

記事へのコメント

名前 : H.Matsuda (2009/04/28 12:03:31)

>えんさん

記事中にもありますように、記事とコメントのセパレータがおかしいので相互に入り込んだりして干渉したりします。
FC2でしたら、一旦記事をインポートしておかしい記事を見て、そこをエディタで直接修正していくのが確実だと思います。

セパレータは ----- や -------- なので、記事又はコメントの中にこれがあるのだと思います。(FC2 へのインポートはわからないので予想です)
-------------- みたいに区切り線として入れていたりしますと発生する場合があります。

いっそのこと、化けてしまう記事がそれほど多くなければ削除してしまうのも手かと思います。(そして後から手動で投稿とか・・・)

名前 : えん (2009/04/28 00:45:05)

ドブログ・・データ移行したくて
MT形式のファイルを他のブログに
写しているのですが
一向に上手くいきません

FC2では記事内にコメントが入り込んだり
コメントが記事内に入り込んだり、
ココログにいたってはコメントは完璧インポートできたのですが、
肝心な記事が空欄になってしまいました。

過去5年近い想いでが沢山つまったブログなので、
テキストだけでもどこかにいこうできないかと、
なにか良い方法はないかと彷徨っています。

名前
コメントキー
 
コメントする時はキーを正確に入力して下さい
コメント
アドレスを含んだコメントはできません
© 2008-10 A.K.I Software all rights reserved.