2013年1月4日金曜日

[Python]MeCab バインディング - Python からの使い方

test01.py
# -*- coding: utf-8 -*-
import optparse
import codecs
import MeCab

parser = optparse.OptionParser()
parser.add_option("-i", "--input", dest="input", help="Input file name", metavar="[INPUT]")
(options, args) = parser.parse_args()
print "Input file name: %s" % (options.input)

if options.input == None:
 parser.print_help()
 exit()

fd = codecs.open(options.input, 'r', 'utf-8')
for line in fd:
 line = line.rstrip() # 行末の空白・改行コードを削除する
 print line
 t = MeCab.Tagger("")

 # MeCab 内では UTF-8 で処理されるので utf-8 に変換して文字列を渡す
 ret = t.parse(line.encode('utf-8'))
 # MeCab からの出力は UTF-8 になっているので unicode に decode して表示する
 print ret.decode('utf-8')

 m = t.parseToNode(line.encode('utf-8'))
 while m:
 str = m.surface.decode('utf-8')
 print str
 m = m.next

fd.close()
sample.txt
こんにちは、今日はいい天気ですね。
一緒にお散歩に行きましょう。
天気が悪くなってきたら急いで帰りましょう。


実行結果

> python test01.py -i sample.txt
Input file name: sample.txt
こんにちは、今日はいい天気ですね。
こんにちは 感動詞,*,*,*,*,*,こんにちは,コンニチハ,コンニチワ
 記号,読点,*,*,*,*,、,、,、
今日 名詞,副詞可能,*,*,*,*,今日,キョウ,キョー
 助詞,係助詞,*,*,*,*,は,ハ,ワ
いい 形容詞,自立,*,*,形容詞・イイ,基本形,いい,イイ,イイ
天気 名詞,一般,*,*,*,*,天気,テンキ,テンキ
です 助動詞,*,*,*,特殊・デス,基本形,です,デス,デス
 助詞,終助詞,*,*,*,*,ね,ネ,ネ
 記号,句点,*,*,*,*,。,。,。
EOS


こんにちは

今日

いい
天気
です



一緒にお散歩に行きましょう。
一緒 名詞,サ変接続,*,*,*,*,一緒,イッショ,イッショ
 助詞,格助詞,一般,*,*,*,に,ニ,ニ
 接頭詞,名詞接続,*,*,*,*,お,オ,オ
散歩 名詞,サ変接続,*,*,*,*,散歩,サンポ,サンポ
 助詞,格助詞,一般,*,*,*,に,ニ,ニ
行き 動詞,自立,*,*,五段・カ行促音便,連用形,行く,イキ,イキ
ましょ 助動詞,*,*,*,特殊・マス,未然ウ接続,ます,マショ,マショ
 助動詞,*,*,*,不変化型,基本形,う,ウ,ウ
 記号,句点,*,*,*,*,。,。,。
EOS


一緒


散歩

行き
ましょ



天気が悪くなってきたら急いで帰りましょう。
天気 名詞,一般,*,*,*,*,天気,テンキ,テンキ
 助詞,格助詞,一般,*,*,*,が,ガ,ガ
悪く 形容詞,自立,*,*,形容詞・アウオ段,連用テ接続,悪い,ワルク,ワルク
なっ 動詞,自立,*,*,五段・ラ行,連用タ接続,なる,ナッ,ナッ
 助詞,接続助詞,*,*,*,*,て,テ,テ
 動詞,非自立,*,*,カ変・クル,連用形,くる,キ,キ
たら 助動詞,*,*,*,特殊・タ,仮定形,た,タラ,タラ
急い 動詞,自立,*,*,五段・ガ行,連用タ接続,急ぐ,イソイ,イソイ
 助詞,接続助詞,*,*,*,*,で,デ,デ
帰り 動詞,自立,*,*,五段・ラ行,連用形,帰る,カエリ,カエリ
ましょ 助動詞,*,*,*,特殊・マス,未然ウ接続,ます,マショ,マショ
 助動詞,*,*,*,不変化型,基本形,う,ウ,ウ
 記号,句点,*,*,*,*,。,。,。
EOS


天気

悪く
なっ


たら
急い

帰り
ましょ

0 件のコメント:

コメントを投稿