pip install pynlpir
ただしまともに動かないのでいろいろ手を入れる必要ある。分かち書きだけが必要ならpos_mapをゴニョゴニョしてるところを書き換えて無効にするのが良い
以下は2013年当時の古い情報
昔からある中国語(簡体字)のPOS tagger。なんか新しくなってNLPIRとかいうのに変わっている。
NLPIRはバイナリとヘッダ、辞書は手に入れられるのでラップすればいろいろ動くわけだが、pythonで動かすコードが落ちてた。script言語から呼べるのは楽で良い
SWIGでラッパーを書いているので、SWIGが必要
チェックアウトしてみて中身をみてみると、同梱されているlibNLPIR.soはどうも32bit Linuxの物なので、64bit環境の人は64bit用のlibNLPIR.soに置き換える必要がある。
ここで、Linux,64bit,Cのzipをダウンロードすると、中にlibNLPIR.soが入っているので、gitで落としてきたlibNLPIR.soと差し替えれば問題なく動く。 取り敢えず64bitのdebianでは問題なく動いているようだ。
インストールは、必要に応じてlibNLPIR.soを差し替えたあと、
./setup.sh
で入る。sudoとかしてるところは適当に書き換えてあげたり、'setup.py install'も必要であればrootでやる。
ついでにpinyinを振ってくれるpinyinライブラリを使えば、単語に分けた後にpinyinを振れる。
インストール出来たらこんな感じのコードで分かち書きやpinyin化が出来る。
from PyNLPIR import * import pinyin import sys import cStringIO sys.stdout = cStringIO.StringIO()#nlpir_initで標準出力にメッセージが出るのでそいつをトラップする nlpir_init('/path/to/NLPIR_DIR(ex /home/hogehoge/python-nlpir)', 'UTF-8') sys.stdout = sys.__stdout__#標準出力を戻す dat = nlpir_paragraph_process(r'@ICTCLAS张华平博士 应各位ICTCLAS用户的要求,张华平博士提前发布ICTCLAS2013 版本,为了与以前工作进行大的区隔,并推广NLPIR自然语言处理与信息检索共享平台,从本版本开始,系统名称调整为NLPIR汉语分词系统。') [pinyin.get(unicode(w,"utf8")) for w in dat.split(' ')]#pinyin化
#kakasi
kakasi -ja -ga -ka -Ea -Ka -Ha -Ja