きっかけ
まずタイトルからして訳わからん感じですが,きっかけはProcessingのpython modeを探していた時でした.Python Modeを作っている人自体は沢山いますが,そのうちのProcessingの公式モジュール?一覧で出ていたPython Modeを作成した人のウェブサイトをよく見ていました.すると彼は俳句ファインダーなるものを作っていた,という次第です.というわけで触ってみました.ちなみに俳句と言っても英語で,音節の数を数えているようです.
動かしてみた
インストール
いたって通常通りです.
$ wget http://MrFeinberg.com/haikufinder-1.1.zip
$ unzip haikufinder-1.1.zip
$ cd haikufinder-1.1
$ python setup.py install
あとはREADMEにあるようなスクリプトをつらつらと書けばできる.........はずでしたが,まず音節の並びが5 7 5
となるような文書を見つけねばなりません.
いろいろさまよって,なんとかこれをみつけました.シンデレラです(笑)
スクリプト
というわけでこんな感じになります.
from haikufinder import HaikuFinder
text = ''' Once there was a gentleman who married, for his
second wife, the proudest and most haughty woman that
was ever seen. She had, by a former husband, two
daughters of her own humor, who were, ..(長いので略)'''
haikus = HaikuFinder(text).find_haikus()
for haiku in haikus:
print haiku[0]
print " %s" % haiku[1]
print haiku[2]
print
こんなスクリプトを用意して,先ほどのhaikufinder-1.1/
下に置いて実行しましょう.結果はこの様になりました.
$ python haiku_test.py
Nothing was then heard
but a confused noise of: "Ha!
how handsome she is!
です.
これだけです.とりあえずリズムの良いフレーズが取り出せますよっということですね.
日本語なら
- まずはmecab等で分かち書き
- 文章中の漢字もmecabで読み推定しておく
- 日本語を文節ごとに切る(なんかツールある?)
-
5 7 5
数える
ですかね.形態素じゃなくて文節で区切れるツールあると思いますが,詳しく調べていません.mecabの形態素解析は文節数最小をヒューリスティックに使ってるみたいなのできっとあると思います.では.