#python3からmecabを使ってみた備忘録
こんにちは。
新卒マイナス1年目エンジニアの和尚です。
今日はpython3から形態素解析に用いられるmecabを使っていこうと思います。
centOS6(Linux)を使用しているので、yumからインストールします。
centOS6の導入方法はこちら
ドットインストール大先生:ローカル開発環境の構築(windows編)
ドットインストール大先生:ローカル開発環境の構築 [macOS編]
※macOSやwindowsを使用して開発する方はHomebrewなどをご自身の環境に応じてお好きな方法でmecabを導入してください。僕の場合(centOS)はyumが一番楽でした。
開発環境
- centOS6
- python 3.6.2
- pip 10.0.1
目的
python3からmecabを使用できるようになる。
想定読者
- (pythonを使用して)自然言語処理を始めたばかりの方
- エンジニアの卵および雛
Mecabのインストール
参考資料
yumでMeCabをインストール
CentOSにMeCabをインストールして使う
[mecab公式ドキュメント]
(http://taku910.github.io/mecab/)
Groongaリポジトリを導入
- yumでmecabをインストールするために、まずgroongaを入れます。
- パッケージ更新
$ sudo rpm -ivh http://packages.groonga.org/centos/groonga-release-1.1.0-1.noarch.rpm
$ sudo yum makecache
Mecab本体+その他諸々のインストール
- Mecab、Mecabの辞書をインストールします。
- Mecabの開発バージョンもインストールします。 (mecab-configが見つからずエラーを吐いたため)
- python3のmecabパッケージをインストールします。
$ sudo yum -y install mecab mecab-ipadic
$ sudo yum -y install mecab-devel
$ pip install mecab-python3
インストール完了です。
pythonからmecabを使ってみる
動作確認
mecabとmecab-python3がインストールできているかを確認します。
$ mecab --version
mecab of 0.996
$ pip list
~
mecab-python3
~
このように表示されていたらOKです。
コードを書く
mecab公式サイトにあるpythonのサンプルプログラムを実装してみます。
サンプルプログラムはpython2の書き方なので、python3の書き方に変更し、標準入力から形態素解析するように変更しました。
import sys
import MeCab
#sysとmecab-python3を呼び出します。
m = MeCab.Tagger ("-Ochasen")
'''
mecabインスタンスの生成(出力フォーマットはchasen)
ヨミ:("-Oyomi")
全情報:("-Odump")
わかち書き:("-O wakati")
etc... 公式ドキュメント見てください。
'''
text = input(">>")
print(m.parse (text))
#標準入力をtextに代入し、表示させます。
結果
python3からmecabを使用してみました。
次回はcabochaです。