WSLにMeCab + NEologdをインストール / Anaconda3上のPythonで使えるように
約2年越しに、↓の回避策です。
MeCabの新語辞書NEologdをインストールできない... - mocchaso note
Windowsでも、WSL (Ubuntu)を使えば、MeCab + NEologdまでインストールできます。
qiita.com
ModuleNotFoundError が出る
$ pip install mecab-python3==0.996.5
で解決しました。
原因
Pythonの実行環境であるAnacondaに、mecab-python3がインストールされていないこと(pip3ではWSL上に直接インストールされる) 。
※pip, pip3がインストールされているパスの確認
$ which pip <home directory>/anaconda3/envs/<env_name>/bin/pip $ which pip3 /usr/bin/pip3
何故バージョン指定?
2020/07/07時点で最新版の1.0.0をインストールしたら、m = MeCab.Tagger('-Ochasen')
でRunTimeError
が発生し、これを解消できなかったため。
GitHubリポジトリでもIssueが挙がっているのですが、1個前のバージョンを明示的に指定・インストールすることで一旦回避。
Pythonコード上でMeCabを使う
新語辞書NEologdを使いたい場合は、そのパスを指定する。
- MeCabの設定ファイルのパスを確認
$ which mecab-config /usr/bin/mecab-config
- MeCabの辞書のパスを確認
$ /usr/bin/mecab-config --dicdir /usr/lib/x86_64-linux-gnu/mecab/dic
- 確認したパスから、NEologdの辞書のパスも確認
/usr/lib/x86_64-linux-gnu/mecab/dic/mecab-ipadic-neologd