はしくれエンジニアもどきのメモ

情報系技術・哲学・デザインなどの勉強メモ・備忘録です。

Windowsに64bit版Mecabとpython用bindingをインストールする

Windowsに64bit版Mecabpython用bindingをインストールする

有志の方がwindows用64bit版のMecabインストーラー(非公式)とpython用bindingモジュールを作成していたのでインストールメモ.

参考:

qiita.com

環境

  • Windows10 64bit

64bit版Mecabをインストール

Releases · ikegami-yukino/mecab · GitHub からインストーラーをDLしてインストールする.

そしてPATHを通す.

MECAB: C:\Program Files\MeCab\bin

PATHを通すとmecabコマンドが使えるようになる. ただし,文字コードutf-8でインストールするとchcp 65001しても表示は文字化けしないが,入力の日本語全角文字は有効にならないので注意.

chcp 65001
mecab
apple
> apple   名詞,固有名詞,組織,*,*,*,*
> EOS

pythonからMecabを操作できるbindingをインストール

ありがたいことにpipからインストールできる.

mecab · PyPI

pip install mecab

parse関数に文字列の文を渡せば形態素解析してくれる.

import MeCab
t = MeCab.Tagger()
sentence = "太郎はこの本を女性に渡した。"
print(t.parse(sentence))
太郎   名詞,固有名詞,人名,名,*,*,太郎,タロウ,タロー
は 助詞,係助詞,*,*,*,*,は,ハ,ワ
この  連体詞,*,*,*,*,*,この,コノ,コノ
本 名詞,一般,*,*,*,*,本,ホン,ホン
を 助詞,格助詞,一般,*,*,*,を,ヲ,ヲ
女性  名詞,一般,*,*,*,*,女性,ジョセイ,ジョセイ
に 助詞,格助詞,一般,*,*,*,に,ニ,ニ
渡し  動詞,自立,*,*,五段・サ行,連用形,渡す,ワタシ,ワタシ
た 助動詞,*,*,*,特殊・タ,基本形,た,タ,タ
。 記号,句点,*,*,*,*,。,。,。
EOS

分かち書きするには,オプション-OwakatiTaggerに指定すればいい.

import MeCab
t = MeCab.Tagger('-Owakati')
sentence = "太郎はこの本を女性に渡した。"
print(t.parse(sentence))
太郎 は この 本 を 女性 に 渡し た 。