Python2.7ならインストールも簡単だし、mecabも使えるから2.7をインストールしようと思ったんだけど、
[python] Python2.7の公式サポートはもはや期待できないから、とっととPython3に移行したほうがいいよ | 私の小岩ホッチキス
という記事を読んで、python3.3をインストールすることにした。あと、やっぱりmecabを使いたいので3.3向けのissueを適応してみた。
まず、Python3のインストールはここ(CentOS に Python2.7, Python3.3を入れたメモ - Qiita)を参考に、以下のコマンドを実行する。
yum groupinstall "Development tools" yum install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-deve curl -O http://python.org/ftp/python/3.3.3/Python-3.3.3.tgz tar zxf Python-3.3.3.tgz cd ../Python-3.3.3 ./configure --prefix=/opt/local sudo make && make altinstall curl -O http://python-distribute.org/distribute_setup.py /opt/local/bin/python3.3 ./distribute_setup.py /opt/local/bin/easy_install-3.3 virtualenv
これでpython3.3.3がインストールされる。Permissionがなければ適当にsudoしておく。
Python3はPython2と少し異なる書き方になっている命令があるので、心配なら適当に確認することをおすすめする。
- 作者: Mark Pilgrim
- 発売日: 2012/10/26
- メディア: Kindle版
- 購入: 3人 クリック: 25回
- この商品を含むブログを見る
次に、MeCabも使いたいのでここ(Ubuntu - MeCabをPython3上から使えるようにする - Qiita)を参考に、インストールを行う。
まず先にrequest_type.patchをここ(Issue 5 - mecab - Python wrapper: surface text garbled in first call to parseToNode - Japanese morphological analyzer - Google Project Hosting)から、MeCab.pyとMeCab_wrap.cxxをここ(Issue 7 - mecab - swig version used for mecab-python too old. - Japanese morphological analyzer - Google Project Hosting)からダウンロードしておく。(wget で適当に取得しようと思ったんだけど、うまく行かなかったので。)
wget https://mecab.googlecode.com/files/mecab-0.996.tar.gz tar -zxvf mecab-0.996.tar.gz cd ~/mecab-0.996 patch -u < ../request_type.patch ./configure --enable-utf8-only make sudo make install wget https://mecab.googlecode.com/files/mecab-ipadic-2.7.0-20070801.tar.gz tar -zxvf mecab-ipadic-2.7.0-20070801.tar.gz cd ~/mecab-ipadic-2.7.0-20070801 ./configure --with-charset=utf8 make sudo make install wget https://mecab.googlecode.com/files/mecab-python-0.996.tar.gz tar -zxvf mecab-python-0.996.tar.gz mv MeCab.py mecab-python-0.996/ mv MeCab_wrap.cxx mecab-python-0.996/ cd ~/mecab-python-0.996 vim setup.py #python3向けの修正を適用([http://anond.hatelabo.jp/20121113070853:title]) #return string.split (cmd1(str)) を #return cmd1(str).split() に書き換える。 python3 setup.py build sudo python3 setup.py install
これでmecabとpython向けmecabモジュール(mecab-python)、あとipa-dicがインストールできた。
使い方は従来のmecab-python通りでOK。ここらへん(Pythonからmecabで形態素解析やってみる - アオのログ)を参考にすれば良いと思う。
import MeCab tagger = MeCab.Tagger ("-Owakati") text="これはテストです" result = tagger.parse(text) print(result)
ちなみに、MeCab.Tagger に与える引数を適当に変えると出力される結果が変わる。
このコードは、実行すると
>>> これ は テスト です
と表示される。素晴らしい。
mecab(を含む自然言語処理ツール)の基本的な使い方は、この本を読むと良い。
- 作者: Steven Bird,Ewan Klein,Edward Loper,萩原正人,中山敬広,水野貴明
- 出版社/メーカー: オライリージャパン
- 発売日: 2010/11/11
- メディア: 大型本
- 購入: 20人 クリック: 639回
- この商品を含むブログ (44件) を見る
わかりやすいページも本も増えたので、だいぶこういうことをやりやすい世の中になったね。