LoginSignup
21
11

More than 1 year has passed since last update.

Pythonでかな漢字変換 mozcpy の紹介

Posted at

ちゃお…†
舞い降り…†
今回は、Pythonでかな漢字変換するという需要があるのかわからない mozcpy の紹介の紹介をします…†

mozcpyとは

名前の通り Mozc の辞書を使って MeCab でかな漢字変換するというものです。ただ、普通の IME と違って変換結果をキャッシュしたりだとかそういう機能は一切持たず、ステートレスなシンプルなかな漢字変換です。名前に mozc と入っていますが、作者は Google とほぼ無関係の人間です。

インストール方法

MeCab

MeCabのバイナリをインストールします。MeCabのインストールの仕方はネット上にたくさんあるのでここでは割愛します。UTF-8での使用を想定しています。

mozcpy

PyPIにあるので下記コマンドを打つだけ!

$ pip install mozcpy

使用方法

インポートとインスタンス生成

import mozcpy

converter = mozcpy.Converter()

かな漢字変換してみる

converter.convert('まほうしょうじょ')
# => '魔法少女'
converter.convert('まほうしょうじょ', n_best=10)
# => ['魔法少女', '魔法消除', '魔法省所', '魔法小所', '魔法昇叙', '魔砲少女', 'マホウ少女', '魔法証所', '魔法賞所']

n_best キーワードに int を指定すると変換候補の一覧が返ってきます。ただし、文字列として同じものは省かれるので必ずしも指定した数の候補が返ってくるとは限りません。

かな漢字変換しつつ分かち書きしてみる

converter.convert_wakati('もうなにもこわくない')
# => 'もう 何 も 怖く ない'
converter.convert_wakati('もうなにもこわくない', n_best=3)
# => ['もう 何 も 怖く ない', 'もう 何 も こわく ない', 'もう 何 も 恐く ない']

こちらも n_best 指定できます。

かなを分かち書きしてみる

converter.wakati("もうなにもこわくない")
# => 'もう なに も こわく ない'
converter.wakati("もうなにもこわくない", n_best=10)
# => ['もう なに も こわく ない']

需要あるのか謎だけど実装が簡単なので付けてみました。

さいごに

Contributions are welcome! です!
https://github.com/ikegami-yukino/mozcpy

21
11
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
21
11