Edited at

python3からmecabを使ってみる

More than 1 year has passed since last update.


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公式ドキュメント



Groongaリポジトリを導入


  1. yumでmecabをインストールするために、まずgroongaを入れます。

  2. パッケージ更新

$ sudo rpm -ivh http://packages.groonga.org/centos/groonga-release-1.1.0-1.noarch.rpm

$ sudo yum makecache


Mecab本体+その他諸々のインストール


  1. Mecab、Mecabの辞書をインストールします。

  2. Mecabの開発バージョンもインストールします。 (mecab-configが見つからずエラーを吐いたため)

  3. 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の書き方に変更し、標準入力から形態素解析するように変更しました。


main.py

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です。