Overview
python-mecab-ko is a python binding for mecab-ko.
Example
To perform morpheme analysis, you need to make a MeCab instance first:
>>> from mecab import MeCab
>>> mecab = MeCab()
To extract morphemes in a given sentence, use mecab.morphs()
:
>>> mecab.morphs("영등포구청역에 있는 맛집 좀 알려주세요.")
["영등포구청역", "에", "있", "는", "맛집", "좀", "알려", "주", "세요", "."]
To extract nouns in a given sentence, use mecab.nouns()
:
>>> mecab.nouns("우리나라에는 무릎 치료를 잘하는 정형외과가 없는가!")
["우리", "나라", "무릎", "치료", "정형외과"]
To perform a morpheme analysis on a given sentence, use mecab.pos()
:
>>> mecab.pos("자연주의 쇼핑몰은 어떤 곳인가?")
[("자연주의", "NNG"), ("쇼핑몰", "NNG"), ("은", "JX"), ("어떤", "MM"), ("곳", "NNG"), ("인가", "VCP+EF"), ("?", "SF")]
If you would like to obtain detailed morpheme analysis results, use mecab.parse()
:
>>> mecab.parse("즐거운 하루 보내세요!")
[
Morpheme(span=Span(start=0, end=3), surface="즐거운",
feature=Feature(
pos="VA+ETM", semantic=None, has_jongseong=True, reading="즐거운",
type="Inflect", start_pos="VA", end_pos="ETM", expression="즐겁/VA/*+ᆫ/ETM/*",
),
),
Morpheme(span=Span(start=4, end=6), surface="하루",
feature=Feature(
pos="NNG", semantic=None, has_jongseong=False, reading="하루",
type=None, start_pos=None, end_pos=None, expression=None,
),
),
Morpheme(span=Span(start=7, end=9), surface="보내",
feature=Feature(
pos="VV", semantic=None, has_jongseong=False, reading="보내",
type=None, start_pos=None, end_pos=None, expression=None,
),
),
Morpheme(span=Span(start=9, end=11), surface="세요",
feature=Feature(
pos="EP+EF", semantic=None, has_jongseong=False, reading="세요",
type="Inflect", start_pos="EP", end_pos="EF", expression="시/EP/*+어요/EF/*",
),
),
Morpheme(span=Span(start=11, end=12), surface="!",
feature=Feature(
pos="SF", semantic=None, has_jongseong=None, reading=None,
type=None, start_pos=None, end_pos=None, expression=None,
),
),
]