pyKNPをインストールしていきます。
pyKNPのgithubのrequirementにknpとjumanと書かれているので、インストールしていきます。
brew install knp brew install jumanapp
どちらもそれなりにインストールに時間がかかります。
次に、pipでpyknpをインストールします。
pip install pyknp
インストールできているか確認しましょう
brew list pip freeze
次に、KNPを使って構文解析を試してみます。
from pyknp import KNP line = "クロールで泳いでいる少女を見た" knp = KNP() result = knp.parse(line) print("文節") for bnst in result.bnst_list(): # 各文節へのアクセス print("\tID:%d, 見出し:%s, 係り受けタイプ:%s, 親文節ID:%d, 素性:%s" \ % (bnst.bnst_id, "".join(mrph.midasi for mrph in bnst.mrph_list()), bnst.dpndtype, bnst.parent_id, bnst.fstring)) print("基本句") for tag in result.tag_list(): # 各基本句へのアクセス print("\tID:%d, 見出し:%s, 係り受けタイプ:%s, 親基本句ID:%d, 素性:%s" \ % (tag.tag_id, "".join(mrph.midasi for mrph in tag.mrph_list()), tag.dpndtype, tag.parent_id, tag.fstring)) print("形態素") for mrph in result.mrph_list(): # 各形態素へのアクセス print("\tID:%d, 見出し:%s, 読み:%s, 原形:%s, 品詞:%s, 品詞細分類:%s, 活用型:%s, 活用形:%s, 意味情報:%s, 代表表記:%s" \ % (mrph.mrph_id, mrph.midasi, mrph.yomi, mrph.genkei, mrph.hinsi, mrph.bunrui, mrph.katuyou1, mrph.katuyou2, mrph.imis, mrph.repname))
参考文献
jumanとKNPの使い方 pyknp.readthedocs.io
knpのモジュールなど
pyknp.readthedocs.io
さらに説明
pyKNPについてのメモ(自分用) · GitHub
jumanだけど参考になりそう
chuckischarles.hatenablog.com
追記(2019-12-12)
brewでJuman++のインストールを行って、Juman++のユーザー辞書を追加しようとしたらJuman++が壊れました。
もしユーザー辞書をのちのち追加したいよ、という方はおとなしく公式の通りにダウンロードしたほうが懸命だと思います。
(もし壊れた原因など知りたければコメントください)