Skip to main content

Python wrapper for the MeCab-ko morphological analyzer for Korean

Project description

This is a Python wrapper for the MeCab-ko morphological analyzer for Korean text. It works with Python 3.6 and greater.

There are several implementations of python binding or wrapper for MeCab-ko, but they are generally not well maintained.
I made it to stand on the shoulders of giants(well-maintained open-source projects like MeCab, mecab-ko and mecab-python3) with minimum modifications.
I initially named it mecab-ko-python3 because the package name referenced for development was mecab-python3,
it may seem a little arrogant, but to reduce confusion in the PyPI, the name was changed to 'mecab-ko'.
(The repository is named 'pymecab-ko' to distinguish it from original mecab-ko)

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_ko as MeCab
>>> tagger = MeCab.Tagger("-Owakati")
>>> tagger.parse("아버지가방에들어가신다").split()
['아버지', '가', '방', '에', '들어가', '신다']

>>> tagger = MeCab.Tagger()
>>> print(tagger.parse("아버지가방에들어가신다"))
아버지  NNG,*,F,아버지,*,*,*,*
      JKS,*,F,,*,*,*,*
      NNG,*,T,,*,*,*,*
      JKB,*,F,,*,*,*,*
들어가  VV,*,F,들어가,*,*,*,*
신다    EP+EC,*,F,신다,Inflect,EP,EC,/EP/*+ㄴ다/EC/*
EOS

The API for pymecab-ko 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-ko

These wheels include a copy of the MeCab-ko library and a dictionary. There is a unique dictionary available for MeCab-ko. mecab-ko-dic is automatically installed when installing pymacab-ko.

To build from source using pip,

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

Dictionaries

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

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 this to use this package on Windows.

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, mecab-ko-dic does not include Chasen output format. Please see the MeCab documentation.

Alternatives

Licensing

Like MeCab and mecab-python3, pymecab-ko 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).

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

mecab-ko-1.0.1.tar.gz (75.9 kB view hashes)

Uploaded Source

Built Distributions

mecab_ko-1.0.1-cp311-cp311-win_amd64.whl (500.5 kB view hashes)

Uploaded CPython 3.11 Windows x86-64

mecab_ko-1.0.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (590.4 kB view hashes)

Uploaded CPython 3.11 manylinux: glibc 2.17+ x86-64

mecab_ko-1.0.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (568.8 kB view hashes)

Uploaded CPython 3.11 manylinux: glibc 2.17+ ARM64

mecab_ko-1.0.1-cp311-cp311-macosx_10_9_universal2.whl (315.7 kB view hashes)

Uploaded CPython 3.11 macOS 10.9+ universal2 (ARM64, x86-64)

mecab_ko-1.0.1-cp310-cp310-win_amd64.whl (500.5 kB view hashes)

Uploaded CPython 3.10 Windows x86-64

mecab_ko-1.0.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (583.2 kB view hashes)

Uploaded CPython 3.10 manylinux: glibc 2.17+ x86-64

mecab_ko-1.0.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (561.5 kB view hashes)

Uploaded CPython 3.10 manylinux: glibc 2.17+ ARM64

mecab_ko-1.0.1-cp310-cp310-macosx_11_0_x86_64.whl (275.6 kB view hashes)

Uploaded CPython 3.10 macOS 11.0+ x86-64

mecab_ko-1.0.1-cp39-cp39-win_amd64.whl (500.5 kB view hashes)

Uploaded CPython 3.9 Windows x86-64

mecab_ko-1.0.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (583.1 kB view hashes)

Uploaded CPython 3.9 manylinux: glibc 2.17+ x86-64

mecab_ko-1.0.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (561.2 kB view hashes)

Uploaded CPython 3.9 manylinux: glibc 2.17+ ARM64

mecab_ko-1.0.1-cp39-cp39-macosx_11_0_x86_64.whl (275.6 kB view hashes)

Uploaded CPython 3.9 macOS 11.0+ x86-64

mecab_ko-1.0.1-cp38-cp38-win_amd64.whl (500.7 kB view hashes)

Uploaded CPython 3.8 Windows x86-64

mecab_ko-1.0.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (579.4 kB view hashes)

Uploaded CPython 3.8 manylinux: glibc 2.17+ x86-64

mecab_ko-1.0.1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (556.3 kB view hashes)

Uploaded CPython 3.8 manylinux: glibc 2.17+ ARM64

mecab_ko-1.0.1-cp38-cp38-macosx_10_15_x86_64.whl (275.7 kB view hashes)

Uploaded CPython 3.8 macOS 10.15+ x86-64

mecab_ko-1.0.1-cp37-cp37m-win_amd64.whl (500.6 kB view hashes)

Uploaded CPython 3.7m Windows x86-64

mecab_ko-1.0.1-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (576.7 kB view hashes)

Uploaded CPython 3.7m manylinux: glibc 2.17+ x86-64

mecab_ko-1.0.1-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (553.1 kB view hashes)

Uploaded CPython 3.7m manylinux: glibc 2.17+ ARM64

mecab_ko-1.0.1-cp37-cp37m-macosx_10_15_x86_64.whl (275.5 kB view hashes)

Uploaded CPython 3.7m macOS 10.15+ x86-64

mecab_ko-1.0.1-cp36-cp36m-win_amd64.whl (510.7 kB view hashes)

Uploaded CPython 3.6m Windows x86-64

mecab_ko-1.0.1-cp36-cp36m-macosx_10_14_x86_64.whl (275.3 kB view hashes)

Uploaded CPython 3.6m macOS 10.14+ x86-64

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page