2010年11月21日日曜日

形態素解析器IgoのPython版作った

Java(とCL)で書かれた形態素解析器であるIgoをPythonにほぼそのまま移植しました。
Java版で作った辞書がそのまま使えるようにしたので、辞書を作る部分は(まだ)移植してません。
mmapしてるのでGAEでは動きません。すぐ取りかかる予定です。
またGAE版の辞書はBigEndianなのでそこらへんも対応する予定です。

https://code.launchpad.net/~hideaki-t/+junk/igo-pyに置きました。
簡単なテストしかしてません。問題があったら教えてください!

簡単なサンプル
# coding: utf-8
import igo.Tagger

t = igo.Tagger.Tagger('/mnt/dev/ipadic')
l = t.parse(u'こんにちは世界')
for m in l:
 print m.surface, m.feature, m.start

結果
~/works/igo-py $ python test.py
こんにちは 感動詞,*,*,*,*,*,こんにちは,コンニチハ,コンニチワ 0
世界 名詞,一般,*,*,*,*,世界,セカイ,セカイ 5


追記
  • mmapが使えなければFile IOで処理するようにしました
  • GAE版辞書モード追加しました
  • 複数回parse/wakatiすると結果がつながる問題を直しました
  • PyPIに登録しました
  • Python 2.5 on Linux, Python 2.6 on Windows/Linuxで動作を確認しました

0 件のコメント:

コメントを投稿