[PC] TikaOnDotNetとxdoc2txtと比較〜自分が使いたいことを基にしたとても簡単な比較〜
TikaOnDotNetとxdoc2txtとの比較
つい先日知ったTikaOnDotNetと、xdoc2txtとの対比を行ってみました。視点が偏っているかもしれませんので参考までにご覧ください。
比較表
長所 | 短所 | |
---|---|---|
TikaOnDotNet | ・組み込みが簡単 C#でたった数行でテキスト解析できる ・イメージファイルを含むファイルのメタ情報も取得可能 |
・JUST SYSTEMの一太郎は抽出できない |
xdoc2txt | ・対応文書が多い(一太郎も含む。iFilterも利用できる) | ・コーディングが少し複雑 |
TikaOnDotNetがiFilter等を利用できるか否か定かではありません。xdoc2txtは、iFilterの対応を謳っています。なのでiFilterを利用できる文書も抽出することができます。従って、以前よくお世話になっていたDocuWorks文書とかも検索可能になります。
一方で、TikaOnDotNetの最大の利点は、コーディングの簡潔さでしょうか。たった数行でテキストの抽出をすることができます。xdoc2txtは、dllの利用なので若干コードが複雑と言った感じでしょうか。
一太郎文書
仮に一太郎文書をTikaOnDotNetで解析させてみたらどうなるか試してみました。一太郎文書としては、スタイルを使った「大見出し」「中見出し」と、表とを入れた文書を作成しました。
解析結果は、デバッグ途中の変数の中身を見てみます。文書の中身であるTextは、すべて空文字でした。つまり取得できませんでした。ファイルに保存されているメタデータは、たくさん取得していることがわかります。
PNGファイル
ちなみにPNGファイルもテキスト抽出してみました。OCRとかがかかるわけでもないので、ファイルのメタ情報のみが取得されます。図形の大きさ(たてxよこ)等が取得されていることがわかりました。
速度
当初テスト用に作成したプログラムの実行速度が遅かったことから、TikaOnDotNet自体の解析に時間がかかっているのか不安になりました。そこでTikaOnDotNetの解析速度を調査しました。結果として、解析にかかっている部分は、それほど遅くはないようです。初期起動に時間がかかるのだと思われます。
まとめ
様々な文書に対応しているという点では、xdoc2txtに分があります。しかも私は、既に利用しているのでそれを新たにTikaOnDotNetに書き換えるほどのメリットはありませんでした。ただ、Word文書やPDFのみの文書を取り扱うソフトを一から作る場合であればTikaOnDotNetを使っても良いかなと思いました。特にFlexLuceneとの組み合わせでIKVMを必須なのであれば、親和性は高いと思います。