こんにちは,しまさん(@shimasan0x00)です.
今回はMecabとMecab-ipadic,mecab-ipadic-NEologdをMacにインストールしていきます.
そしてPythonでMecabを扱えるまでを書いていきたいと思います.
最後にcronを使って辞書の自動更新をするまでを解説します.
環境
macOS Mojave(10.14)
pyenv Python 3.6
スポンサーリンク
推奨空容量
標準インストール時(オプション未指定の場合)
必須: 空き 1.5GB
推奨: 空き 5GB
スポンサーリンク
mecab,mecab-ipadicのインストール(Mac)
mecab,mecab-ipadicはHomebrewを使えば簡単にインストールできます.
brew install mecab
brew install mecab-ipadic
エラーが出た方はこれでインストールをしてください.
brew install mecab mecab-ipadic git curl xz
mecab-ipadic-NEologdのインストール(Mac)
愚直にGithub上のREADME通りにやりましょう.
想像の三倍は時間かかります.
git clone --depth 1 https://github.com/neologd/mecab-ipadic-neologd.git
cd mecab-ipadic-neologd
./bin/install-mecab-ipadic-neologd -n -a
インストール先の確認は以下のコマンドで行えます.
echo `mecab-config --dicdir`"/mecab-ipadic-neologd"
スポンサーリンク
Terminalでの使い方(Mecab)
先程のmecab-ipadic-NEologdを使ってTerminal上でMecabを使うなら以下のコマンドを実行してください.
mecab -d /usr/local/lib/mecab/dic/mecab-ipadic-neologd
あとは文章を適当に入力すれば解析してくれます.

デフォルトの辞書を変更したい場合は以下のファイルをいじります.
vim /usr/local/etc/mecabrc
- dicdir = /usr/local/lib/mecab/dic/ipadic
+ dicdir = /usr/local/lib/mecab/dic/mecab-ipadic-neologd
自分で作成した辞書を有効にするのもこのファイルなので覚えていて損はありません.
デフォルトのファイルは以下.
; Configuration file of MeCab
;
; $Id: mecabrc.in,v 1.3 2006/05/29 15:36:08 taku-ku Exp $;
;
dicdir = /usr/local/lib/mecab/dic/ipadic
; userdic = /home/foo/bar/user.dic
; output-format-type = wakati
; input-buffer-size = 8192
; node-format = %m\n
; bos-format = %S\n
; eos-format = EOS\n
変更するとmecabだけでmecab-ipadic-neologdを使ってくれます.

PythonでMecabを使うぞ!!
まずはpipでインストールしてきましょう.
pip install mecab-python3
サンプルコードを載せておきます.
import sys
import MeCab
m = MeCab.Tagger("-Ochasen")
print(m.parse("Youtuberの瀬戸弘司の動画を見るとApple製品欲しくなるんです."))

おぉ〜Python上でMeCab触れた〜〜〜〜!!!!
辞書の自動アップデートをする(cron)
mecab-ipadic-NEologdは週二回アップデートをしているようなので,そのアップデートを反映したいなと思いました.
Macでcron使えないかなぁって思ったら使えるんですね.
ならcronで自動アップデートするしかないです笑.
私は週一でいいので以下のように書きました.
export EDITOR=vim
mkdir ~/mecab_log
crontab -e
00 03 * * 2 /Users/あなたの名前/mecab-ipadic-neologd/bin/install-mecab-ipadic-neologd -n -y -u -p /usr/local/lib/mecab/dic/mecab-ipadic-neologd > /Users/あなたの名前/mecab_log/m_change_log
そうしたらOperation not permittedっていわれました…
crontab: installing new crontab
crontab: tmp/tmp.49610: Operation not permitted
crontab: edits left in /tmp/crontab.W0hxIUxgtx
Mojave〜〜〜!!!って思ったのですが設定でなんとかなりそう.
システム環境設定から「セキュリティとプライバシー」を選択します.

「フルディスクアクセス」を選んで「+」を押し,iTerm.appを追加しましょう.


iTermを再起動して先程のcronをもう一度保存したら…
いけました!!!!!!!!!
さいごに
今回はMecabとMecab-ipadic,mecab-ipadic-NEologdをMacにインストールしました.
それにPythonでMecabを扱えるようになりました.
私の作りたいプログラムのために頑張ってほしいですね笑.
p.s.
というか辞書凄いですよね.瀬戸弘司とか認識してるんですから.
