MeCabをPythonで使うメモ
形態素解析ライブラリのMeCabを試してみる。
まずは簡単なことだけやってみる。
環境
- Windows10(64bit)
- Python3.7.0
環境は以下の手順で構築したものを使う。
Python開発環境構築メモ [Windows] - undulation
MeCabインストール
以下のページからダウンロードする。
MeCab: Yet Another Part-of-Speech and Morphological Analyzer
ダウンロードした「mecab-0.996.exe」を実行する。
文字コードはUTF-8を選択した。
Windows 版には コンパイル済みの IPA 辞書が含まれてるらしい。
パスを通す
環境変数>Pathを編集
インストールしたmecab.exeが置いてあるパスを新規追加する。
動作確認
テキストファイルの文章を読み込ませて解析結果を出力してみる。
test.txt あなたを犯人です。
コマンド >mecab test.txt -o analyze.txt
実行結果 あなた 名詞,代名詞,一般,*,*,*,あなた,アナタ,アナタ を 助詞,格助詞,一般,*,*,*,を,ヲ,ヲ 犯人 名詞,一般,*,*,*,*,犯人,ハンニン,ハンニン です 助動詞,*,*,*,特殊・デス,基本形,です,デス,デス 。 記号,句点,*,*,*,*,。,。,。 EOS
解析対象の日本語は怪しいが解析はうまくいっている。
次はPythonで使えるようにしてみよう。
Pythonで使えるようにする
Windowsでは普通に入れようとすると詰まるらしいので、色々と参考にして以下のコマンドを実行。
>cd C:\dev\python\venv1\Scripts >activate (venv1)>pip install mecab-python-windows
自分の環境では一発で成功したが、参考元にも記載されていた様に
Visual Studio 2015 の Visual C++ 再頒布可能パッケージが必要になるかもしれない。
動作確認
適当にプロジェクトを作成して実行してみる。
TestMeCab.py import MeCab if __name__ == '__main__': mecab = MeCab.Tagger ("-Ochasen") print(mecab.parse("あなたを犯人です。"))
実行結果 あなた アナタ あなた 名詞-代名詞-一般 を ヲ を 助詞-格助詞-一般 犯人 ハンニン 犯人 名詞-一般 です デス です 助動詞 特殊・デス 基本形 。 。 。 記号-句点 EOS
とりあえずシンプルなExampleだが無事に実行できた。
次回は辞書追加を試してみる。
参考
Python3で形態素解析エンジンMeCabを使ってみた | Developers.IO
Windows で pip で mecab-python をいれる
RとPythonでMeCabを使う環境構築(Windows, Mac) - ★データ解析備忘録★
MeCab: Yet Another Part-of-Speech and Morphological Analyzer