Ubuntu18.04環境でMecab+NEologdをPythonから使うための準備
/ 3 min read
Table of Contents
はじめに
Ubuntu18.04環境でMecab+NEologdをPythonから使うため準備方法をまとめます。
方法
Mecab のインストール
$ sudo apt install mecab libmecab-dev mecab-ipadic-utf8
mecab-python3 のインストール
$ pip install mecab-python3
NEologd のインストール
$ git clone --depth 1 https://github.com/neologd/mecab-ipadic-neologd.git$ cd mecab-ipadic-neologd$ ./bin/install-mecab-ipadic-neologd -n
"""[install-mecab-ipadic-NEologd] : Do you want to install mecab-ipadic-NEologd? Type yes or no.⇛ この質問には'Yes'"""
MeCab-ipadic-NEologd のインストール先を確認
$ echo `mecab-config --dicdir`"/mecab-ipadic-neologd"
私の環境では、/usr/lib/x86_64-linux-gnu/mecab/dic/mecab-ipadic-neologd
にインストールされていたので、/usr/local/lib/mecab/dic/
配下になるように、
シンボリックリンクを張っておきます。
$ sudo mkdir -p /usr/local/lib/mecab/dic$ sudo chmod -R 777 /usr/local/lib/mecab$ ln -s /usr/lib/x86_64-linux-gnu/mecab/dic/mecab-ipadic-neologd /usr/local/lib/mecab/dic/mecab-ipadic-neologd
エラー対応
エラー内容
テストスクリプトを書いて実行してみると、
import MeCab
mecab = MeCab.Tagger('-d /usr/local/lib/mecab/dic/mecab-ipadic-neologd')text = 'ペンギンと猫は友達です。'print(mecab.parse(text))
以下のエラーが出てしまいました。
Failed initializing MeCab. Please see the README for possible solutions:
https://github.com/SamuraiT/mecab-python3#common-issues
If you are still having trouble, please file an issue here, and include theERROR DETAILS below:
https://github.com/SamuraiT/mecab-python3/issues
issueを英語で書く必要はありません。
---------------------------- ERROR DETAILS ----------------------------arguments: -d /usr/local/lib/mecab/dic/mecab-ipadic-neologderror message: [ifs] no such file or directory: /usr/local/etc/mecabrc-----------------------------------------------------------------------Traceback (most recent call last): File "mecab.py", line 3, in <module> mecab = MeCab.Tagger('-d /usr/local/lib/mecab/dic/mecab-ipadic-neologd') File "/home/vagrant/projects/venv\_mecab/lib/python3.7/site-packages/MeCab/\_\_init\_\_.py", line 124, in __init__ super(Tagger, self).__init__(args)RuntimeError
解決方法
環境変数を正しく設定し直します。
# mecabのインストール先を確認する$ sudo find / -iname mecabrc⇛ /etc/mecabrc
# 確認したインストール先をbash\_profileに書き込む$ sudo vim ~/.bash_profile⇛ export MECABRC='/etc/mecabrc' を追記する
# 書き込んだ設定を反映する$ source ~/.bash_profile
これでうまく実行できました。
$ python mecab.pyペンギン 名詞,一般,*,*,*,*,ペンギン,ペンギン,ペンギンと 助詞,並立助詞,*,*,*,*,と,ト,ト猫 名詞,一般,*,*,*,*,猫,ネコ,ネコは 助詞,係助詞,*,*,*,*,は,ハ,ワ友達 名詞,一般,*,*,*,*,友達,トモダチ,トモダチです 助動詞,*,*,*,特殊・デス,基本形,です,デス,デス。 記号,句点,*,*,*,*,。,。,。EOS
参考
https://engineeeer.com/mecab-neologd-python/ https://neos21.net/blog/2020/04/05-01.html https://bokunoitnisshi.hatenablog.com/entry/2020/08/01/165215