【Google app engin Python】igo-pythonをGAEで使ってみる

スポンサーリンク

Yahoo!APIだとタイムアウトになるので。

いままで、Google app engineで形態素解析をするには、「Yahoo!の形態素解析API」を利用するしかない。と勝手に思っていました。しかし、データを呼び出すたびにタイムアウトが頻発。
Google app engine側でタイムアウトの時間を伸ばすのにも限界があります。
小刻みにデータを分けて利用しないからだとは思いつつも、既存の形をさほど変更せずにタイムアウトを気にしなくて大丈夫にしたい。
という、考えから、igo-pythonというのを知りました。
これだと、GAE内部で形態素解析が実行できます。
心配な点は、今度は逆にGAEのメモリを食らわれてしまうのでは!?という懸念があったものの、まあものは試しにやってみようという事で。
【環境】
OS : Linux mint14
Google app engine SDK ver 1.7.2
以上の環境で作業しております。
用意するのは次のデータ。
ダウンロードボタンをクリック。12月18日時点:igo-python-0.9.2.tar.gzが最新。
zipボタンからひと通りダウンロードできます。12月18日時点:igo-gae-master.zip
ページ内にある「IPA辞書」を利用します。12月18日時点:mecab-ipadic-2.7.0-20070801.tar.gz
以上の3つのサイトからデータをダウンロードしてきます。
【手順】
igo-python-0.9.2.tar.gzを解凍し、igo-pyhton-0.9.2/igoフォルダをGAEアプリケーションフォルダにまるまるコピー。
igo-gae-master.zipとmecab-ipadic-2.7.0-20070801.tar.gzを解凍して、辞書を作ります。
igo-gae-master/gae-app/igo-morp/war/WEB-INF/lib/igo-0.4.2-gae.jar
こちらのパスにigo-0.4.2-gae.jarがあるのを確認します。
確認できたら、こちらのファイルをつかって、mecab-ipadic-2.7.0-20070801フォルダ内の辞書をigo-pyhthon GAE用へと変換します。
変換するコマンドは以下の通り。
$ java -cp igo-0.4.2.jar net.reduls.igo.bin.BuildDic ipadic mecab-ipadic-2.7.0-20070801 EUC-JP
$ java -cp igo-0.4.2.jar net.reduls.igo.bin.BuildDic 出力先 取り込むデータ 文字コード

という形式みたいです。

これに関しては、http://hideaki-t.blogspot.jp/2010/11/igo-python.htmlを参考にさせていただきました。

また文字コードはEUC-JPのままが良いようです。UTF-8にしたら、エラーになりました。

上記のコマンドでファイルが作成されると、ipadicというフォルダが出来上がります。

出来上がったら、ipadicフォルダをまたもGAEの形態素解析を行いたいアプリケーションフォルダにコピーします。
もちろん、アプリケーションフォルダの直下で大丈夫です。

これで完了です。あとは、利用する際に

import igo.Taggar

と、呼び出してあげれば利用できます。

確認用のプログラムとしては、先ほどの参照サイトにもあるのですが、https://gist.github.com/716998
を利用するとわかりやすいかと思います。

スポンサーリンク

シェアする

フォローする

スポンサーリンク