mecab-python3

Python wrapper for the MeCab morphological analyzer for Japanese

BSD 57 个版本
安装
pip install mecab-python3
poetry add mecab-python3
pipenv install mecab-python3
conda install mecab-python3
描述

This is a Python wrapper for the MeCab morphological analyzer for Japanese text. It currently works with Python 3.8 and greater.

Note: If using MacOS Big Sur, you'll need to upgrade pip to version 20.3 or higher to use wheels due to a pip issue.

issueを英語で書く必要はありません。

Note that Windows wheels require a Microsoft Visual C++ Redistributable, so be sure to install that.

Basic usage

>>> import MeCab
>>> wakati = MeCab.Tagger("-Owakati")
>>> wakati.parse("pythonが大好きです").split()
['python', 'が', '大好き', 'です']

>>> tagger = MeCab.Tagger()
>>> print(tagger.parse("pythonが大好きです"))
python  python  python  python  名詞-普通名詞-一般
が      ガ      ガ      が      助詞-格助詞
大好き  ダイスキ        ダイスキ        大好き  形状詞-一般
です    デス    デス    です    助動詞  助動詞-デス     終止形-一般
EOS

The API for mecab-python3 closely follows the API for MeCab itself, even when this makes it not very “Pythonic.” Please consult the official MeCab documentation for more information.

Installation

Binary wheels are available for MacOS X, Linux, and Windows (64bit) are installed by default when you use pip:

pip install mecab-python3

These wheels include a copy of the MeCab library, but not a dictionary. In order to use MeCab you'll need to install a dictionary. unidic-lite is a good one to start with:

pip install unidic-lite

To build from source using pip,

pip install --no-binary :all: mecab-python3

Dictionaries

In order to use MeCab, you must install a dictionary. There are many different dictionaries available for MeCab. These UniDic packages, which include slight modifications for ease of use, are recommended:

  • unidic: The latest full UniDic.
  • unidic-lite: A slightly modified UniDic 2.1.2, chosen for its small size.

The dictionaries below are not recommended due to being unmaintained for many years, but they are available for use with legacy applications.

For more details on the differences between dictionaries see this overview of Japanese tokenizer dictionaries.

Common Issues

If you get a RuntimeError when you try to run MeCab, here are some things to check:

Windows Redistributable

You have to install the Microsoft Visual C++ Redistributable to use MeCab on Windows.

Installing a Dictionary

Run pip install unidic-lite and confirm that works. If that fixes your problem, you either don't have a dictionary installed, or you need to specify your dictionary path like this:

tagger = MeCab.Tagger('-r /dev/null -d /usr/local/lib/mecab/dic/mydic')

Note: on Windows, use nul instead of /dev/null. Alternately, if you have a mecabrc you can use the path after -r.

Specifying a mecabrc

If you get this error:

error message: [ifs] no such file or directory: /usr/local/etc/mecabrc

You need to specify a mecabrc file. It's OK to specify an empty file, it just has to exist. You can specify a mecabrc with -r. This may be necessary on Debian or Ubuntu, where the mecabrc is in /etc/mecabrc.

You can specify an empty mecabrc like this:

tagger = MeCab.Tagger('-r/dev/null -d/home/hoge/mydic')

Using Unsupported Output Modes like -Ochasen

Chasen output is not a built-in feature of MeCab, you must specify it in your dicrc or mecabrc. Notably, Unidic does not include Chasen output format. Please see the MeCab documentation.

Alternatives

  • fugashi is a Cython wrapper for MeCab with a Pythonic interface, by the current maintainer of this library
  • SudachiPy is a modern tokenizer with an actively maintained dictionary
  • pymecab-ko is a wrapper of the Korean MeCab fork mecab-ko based on mecab-python3
  • KoNLPy is a library for Korean NLP that includes a MeCab wrapper

Licensing

Like MeCab itself, mecab-python3 is copyrighted free software by Taku Kudo taku@chasen.org and Nippon Telegraph and Telephone Corporation, and is distributed under a 3-clause BSD license (see the file BSD). Alternatively, it may be redistributed under the terms of the GNU General Public License, version 2 (see the file GPL) or the GNU Lesser General Public License, version 2.1 (see the file LGPL).

版本列表
1.0.12 2025-11-25
1.0.12.dev2 2025-11-25
1.0.12.dev1 2025-11-25
1.0.11.dev9 2024-11-02
1.0.11.dev8 2024-11-02
1.0.11.dev7 2024-11-02
1.0.11.dev6 2024-11-02
1.0.11.dev5 2024-11-02
1.0.11.dev4 2024-11-02
1.0.11.dev3 2024-11-02
1.0.11.dev2 2024-11-02
1.0.11.dev1 2024-11-02
1.0.10 2024-10-31
1.0.10.dev1 2024-10-31
1.0.9 2024-04-15
1.0.9.dev7 2024-04-15
1.0.9.dev6 2024-04-15
1.0.9.dev5 2024-03-09
1.0.9.dev4 2023-12-21
1.0.9.dev3 2023-12-14
1.0.9.dev2 2023-12-14
1.0.9.dev1 2023-12-10
1.0.8 2023-09-22
1.0.7 2023-09-14
1.0.7.dev3 2023-09-14
1.0.7.dev2 2023-09-13
1.0.7.dev1 2023-09-13
1.0.6 2022-12-06
1.0.5 2022-02-16
1.0.4 2021-06-23
1.0.3 2020-11-09
1.0.2 2020-10-22
1.0.1 2020-07-09
1.0.0 2020-06-29
1.0.8a1 2023-09-15
1.0.6a1 2022-12-06
1.0.5a2 2022-02-16
1.0.5a1 2022-01-28
1.0.4a2 2021-05-19
1.0.4a1 2021-05-18
1.0.3a2 2020-11-09
1.0.3a1 2020-11-09
1.0.2a3 2020-10-20
1.0.2a2 2020-10-20
1.0.2a1 2020-08-13
1.0.0a1 2020-04-27
0.996.5 2020-03-15
0.996.3 2019-12-26
0.996.2 2019-04-22
0.996.1 2018-11-13
0.996.6rc4 2020-04-23
0.996.6rc3 2020-04-23
0.996.6rc2 2020-04-04
0.996.6rc1 2020-03-15
0.7 2014-09-16
0.6 2014-09-11
0.5 2014-09-11