Help us understand the problem. What is going on with this article?

MeCabをPython3.5から使う

More than 1 year has passed since last update.

MeCabインストール

日本語のテキストマイニングを行うときのお供、形態素解析ソフトウェアMeCabをインストールします。
http://taku910.github.io/mecab/#download

意外とドハマリすることの多いMeCabのインストール方法です。
CentOS7.3、Python3.5の環境でMeCabをインストールすることを目指します。
私は手順を確立するのに1日かかりました(笑)

事前設定:必要なパッケージのインストール

OSにログインし、まずはrootユーザになります。

sudo su -
cd ~

以下、rootユーザで操作を続けます。

MeCabの動作に必要なパッケージをインストールします。

yum -y install git gcc-c++

MeCabパッケージをGit Cloneでダウンロード

MeCabをGitから落としてきます。
https://github.com/taku910/mecab

また、今回の作業は/opt/で行いますが、ディレクトリは環境と好みで選んでください。

cd /opt/
git clone https://github.com/taku910/mecab.git

MeCabのインストール

/opt/にダウンロードしたMeCabをOSにインストールします。

cd mecab/mecab
./configure  --enable-utf8-only
make
make check
make install

/usr/local/lib/libmecab.so.2.0.0へのリンクを設定

自動ではモジュールにリンクされないので、以下を実行します。

echo "/usr/local/lib" >> /etc/ld.so.conf
ldconfig

IPA辞書のインストール

https://drive.google.com/uc?export=download&id=0B4y35FiV1wh7MWVlSDBCSXZMTXM 
↑かからダウンロードします。
ただし、wgetできないため、ブラウザでダウンロードし、CentOSの/opt/ディレクトリに配置します。

cd /opt/
tar zxfv mecab-ipadic-2.7.0-20070801.tar.gz
cd mecab-ipadic-2.7.0-20070801
./configure --with-charset=utf8
make
make check
make install

これでOSからMeCabを使う準備はできました。

MeCabをPythonへバインディングする

MeCabをOSにインストールしただけだと、Pythonから使うことはできません。
以下でPythonにMeCabをインストールします。

sed -i 's/ return string.split (cmd1(str))/return cmd1(str).split()/g' /opt/mecab/mecab/python/setup.py

python /opt/mecab/mecab/python/setup.py build
python /opt/mecab/mecab/python/setup.py install

pip install mecab-python3

これでPython3.5からMeCabを使う準備ができました。

PythonからMeCabが使えることを確認

早速試してみましょう。

python
import MeCab
m = MeCab.Tagger ("-Ochasen")
print (m.parse ("私はメカブと申します。カラスではありません。昨日、帰宅途中に財布を落として探して回りました。Oh No!"))

こんな感じです。

2017-02-04_mecab.PNG

Why do not you register as a user and use Qiita more conveniently?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away