質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
Anaconda

Anacondaは、Python本体とPythonで利用されるライブラリを一括でインストールできるパッケージです。環境構築が容易になるため、Python開発者間ではよく利用されており、商用目的としても利用できます。

Python 3.x

Python 3はPythonプログラミング言語の最新バージョンであり、2008年12月3日にリリースされました。

Mecab

Mecabは、オープンソースの形態素解析エンジンです。 言語、辞書、コーパスに依存しない汎用的な設計を基本方針としています。 Mecabの由来は、開発者の好物である和布蕪(めかぶ)から名づけられました。

Q&A

解決済

4回答

5059閲覧

MecabがPython3で使えない

Terratale

総合スコア21

Anaconda

Anacondaは、Python本体とPythonで利用されるライブラリを一括でインストールできるパッケージです。環境構築が容易になるため、Python開発者間ではよく利用されており、商用目的としても利用できます。

Python 3.x

Python 3はPythonプログラミング言語の最新バージョンであり、2008年12月3日にリリースされました。

Mecab

Mecabは、オープンソースの形態素解析エンジンです。 言語、辞書、コーパスに依存しない汎用的な設計を基本方針としています。 Mecabの由来は、開発者の好物である和布蕪(めかぶ)から名づけられました。

0グッド

0クリップ

投稿2018/10/02 04:55

編集2018/10/02 07:31

Mecab-python3を正しくインストールすることができず困っています。
今まで私はAnaconda2でMecabを使っていたのですが、先日Anaconda2をアンインストールしてAnaconda3を使い始めました。
そこで、Anaconda3でもMecabを使えるようにするため、mecab-python3をインストールしよう思い、ターミナルで

sudo pip install mecab-python3

というコマンドを実行すると、

イメージ説明
という結果が表示されました。
赤字の警告文があったため、mecab-python3がきちんとインストールされているかどうかの確認のため、
「pip list」や「conda list」などのコマンドを実行してみると、
どちらも以下の2つの図のように
↓「pip list」結果
イメージ説明
↓「conda list」結果
イメージ説明
パッケージがインストール済みである旨が書いてありました。
しかし、いざpython3の対話モードを立ち上げて

import Mecab

というように入力すると、

>>> import Mecab Traceback (most recent call last): File "<stdin>", line 1, in <module> ModuleNotFoundError: No module named 'Mecab'

のようなエラーが出てしまい、Mecabをpythonで使うことができませんでした。
Mecab自体はきちんとインストール済みであり、「mecab」とコマンドを実行した後「Mecabはフリーウェアです」と入力すると下の結果を返すことを確認済みです。

イメージ説明

また、一度mecab-python3をアンインストールしようとたらどうなるか調べるため、「pip uninstall mecab-python3」というコマンドを実行すると、

イメージ説明

という結果が出力され、その後再び「pip list」や「conda list」を実行してみても結果は変わっていませんでした。

また、「which pip」の結果は

/Users/1510370214b/anaconda3/bin/pip

「which python」の結果は

/Users/1510370214b/anaconda3/bin/python

また、sys.pathは

>>> import sys >>> print(sys.path) ['', '/Users/1510370214b/anaconda3/lib/python36.zip', '/Users/1510370214b/anaconda3/lib/python3.6', '/Users/1510370214b/anaconda3/lib/python3.6/lib-dynload', '/Users/1510370214b/anaconda3/lib/python3.6/site-packages', '/Users/1510370214b/anaconda3/lib/python3.6/site-packages/aeosa']

となっていました。

どうしたらpython3でMecabを使えるようになるでしょうか?

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答4

0

ベストアンサー

「smart-open 1.6.0~」と「distributed 1.21.8~」が気になるなら、手動でbz2fileとmsgpackのインストールを試みては如何ですか?

下のpipのバージョンの警告は本件とは(ほぼ確実に)関係ないはずです。バージョンアップして損はしないとは思いますが……


とても適当な原因の予想。

  1. そもそもちゃんとインストールできていたが、import Mecabのせいで失敗していた
  2. アンインストールを試みたとき、本体のファイルは消去できたが~.egg-infoだけ権限が特別だったので、アンインストールが途中で失敗して残った(なんでやねん、というツッコミなしで・・・)
  3. 現状

アンインストールが途中でぽしゃってるのが辛いところですね。pipとcondaの管理情報が壊れてなきゃいいですけど(信じるしか無い)。

対処法らしきもの。

  • とりあえずsudo pip uninstall mecab-python3してみる。ダメなら手動でゴミ(~.egg-infoと、他にmecab-python3関連らしきものがあれば)を掃除しておく
  • 改めてpip install mecab-python3してみる。もし上手く行かなければ--ignore-installedオプション付ける

たぶんこれで大丈夫なはずです。保証はできませんが。

投稿2018/10/02 11:30

編集2018/10/02 14:02
hayataka2049

総合スコア30933

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

Terratale

2018/10/02 13:01

回答ありがとうございます。 とりあえずbz2fileとmsgpackのインストールを試してみることにします。
Terratale

2018/10/06 08:37

インストールに失敗し中途半端に作成された「/anaconda3/lib/python3.6/site-packages/mecab_python3-0.7-py3.6.egg-info」のフォルダを削除し、bz2fileとmsgpackのインストールを済ませたのち、再び「sudo pip install mecab-python3」コマンドを実行したらきちんとインストールに成功し、pythonでMeCabをインポートできることも確認しました。
guest

0

×Mecab
○MeCab

https://pypi.org/project/mecab-python3/ とか
https://github.com/SamuraiT/mecab-python3 ぐらいは見ましょう。


インストールをsudoでおこなったので作成されたファイルが管理者の持ち物になっていると思います。

sudo chown -R 1510370214b: /Users/1510370214b/anaconda3/lib/python3.6/site-packages/MeCab.py /Users/1510370214b/anaconda3/lib/python3.6/site-packages/_MeCab.* /Users/1510370214b/anaconda3/lib/python3.6/site-packages/mecab_python3-0.7-py3.6.egg-info/

をしておくといいと思います。
conda や pip のインストール先が自分のディレクトリなら管理者権限はいりません。どこにインストールしようとしているかを自覚していないと、こういったコマンドは扱えないですよ。


sudo chown -R 1510370214b: /Users/1510370214b/anaconda3/lib/python3.6/site-packages/MeCab.py /Users/1510370214b/anaconda3/lib/python3.6/site-packages/_MeCab.* /Users/1510370214b/anaconda3/lib/python3.6/site-packages/mecab_python3-0.7-py3.6.egg-info/ pip uninstall mecab-python3 (削除はyキーで) pip install --no-cahce-dir mecab-python3

と試してみてどうなるか、おかしなところがあればどこでどうなるかを調べましょう。

投稿2018/10/02 05:05

編集2018/10/03 15:32
quickquip

総合スコア11038

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

Terratale

2018/10/02 05:18

回答ありがとうございます。 確かにCは大文字でしたね!すみません! しかし、その間違いを認識した上でインポートしようとしてみましたが >>> import MeCab Traceback (most recent call last): File "<stdin>", line 1, in <module> ModuleNotFoundError: No module named 'MeCab' と、同じ結果が返ってきてしまいました。
quickquip

2018/10/02 05:26

pip と python が別のところのものなのでは? where pip とwhere pythonの結果, pyhton -c 'import sys;print(sys.path)' の結果など、質問に追記するといいかと。
Terratale

2018/10/02 07:33

調べた結果を追記しました。 一応pipとpythonは同じ場所にあるようです。
quickquip

2018/10/02 07:49 編集

sys.pathは 普通ですね。 /Users/1510370214b/anaconda3/lib/python3.6/site-packages/MeCab.py は実在しますか? 実在するとなるとかなり原因不明ですね。
Terratale

2018/10/02 07:56

/Users/1510370214b/anaconda3/lib/python3.6/site-packages/を見てみると、meCab.pyはありませんでした。 ただ、mecab_python3-0.7-py3.6.egg-infoというフォルダがありました。
quickquip

2018/10/02 08:27

だとするとインストールが失敗してますね(もしくはインストールした後に消したか)。アンインストールしてインストールし直しかと。
guest

0

pythonのバージョンを3.4以下にして実行したらうまくいくかもしれません。

投稿2018/10/03 14:08

sawady0920

総合スコア13

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

イメージ説明
エラーメッセージの中に書いてあると思うのですが、
pipはデフォルトだとver10なのでupgradeしてver18にしてから再度Mecabを入れ直してみてはどうでしょうか?

python -m pip install --upgrade pip

投稿2018/10/02 07:37

opyon

総合スコア1009

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

Terratale

2018/10/02 08:03

回答ありがとうございます。 pipのアップデートするコマンドを実行してみました。 すると、mecab-python3をインストールしようとした時と同じで、最終的には「Successfully installed pip-18.0」 と言われるのですが、途中で 「smart-open 1.6.0 requires bz2file, which is not installed. distributed 1.21.8 requires msgpack, which is not installed.」 という赤字のエラーが出ていました。
opyon

2018/10/02 11:44

https://qiita.com/unias_day/items/f041b7c46543f38f78f7 再インストールしているとのことなので、 アンインストールしてフォルダも削除して、 再インストールしてスッキリしましょう。 現状の問題をコメントのやり取りだけで解決するのは困難かと。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問