Wikipedia から「き」で終わる項目を抽出してラッキーマン登場botを作った
ラッキー クッキー 九三式火炎放射器ー
— ラッキーマン登場bot (@_lucky_cookie) October 20, 2015
ガモウひろしの「ラッキーマン」をご存じだろうか。知らない人はいないだろうから説明はしない。というわけで先日、ラッキーマン登場時の決め台詞「ラッキー クッキー ○○キー」を大量生成するbotを作った。
必要なのは「き」で終わる単語を大量に集めることである。辞書としては Wikipedia を使うといいだろう。Wikipedia はクローリング行為を禁止しているが、代わりにデータのアーカイブが公開されている。日本語版 Wikipedia の最新版のダウンロードはこちら。
いろんなのがあるけど、今回は項目名が各行にズラズラ書いてあるのが欲しい。 jawiki-latest-all-titles-in-ns0
というのがそれに該当した。157万9808項目あった。
次に「き」で終わる項目だけを抽出する。ひらがなとカタカナについては簡単だ。
$ grep -E "き$\|キ" input.dat
漢字については mecab という形態素分析ツールを使うと良いらしい。
$ sudo apt-get install mecab libmecab-dev mecab-ipadic-utf8 mecab-jumandic-utf8 $ echo 八代亜紀 | mecab 八代 名詞,固有名詞,人名,姓,*,*,八代,ヤシロ,ヤシロ 亜紀 名詞,固有名詞,人名,名,*,*,亜紀,アキ,アキ EOS
これで下から2行目を見て「き」「キ」で終わってるものを取り出す。
この時点で49,230件。うち3割強の18,545件が「○○駅」だった。このままではラッキーマンが我らが鉄オタみたいになってしまうのでジャンプヒーローのイメージ保護の観点から削除した。
あとは「一字金輪仏頂」のように辞書に載ってない単語だと「頂」を「いただき」と読んでしまってるので、そういうのを grep で見つけて除去。「張敷」など中国人の人名をやたら訓読みするので除去。
この他「キー」「キイ」「key」などは適宜追加し、最終的に31364項目。原作によるとラッキーマンは777個のキーワードから自動的に選択しているとあるが、このbotは候補数において40倍。
ちなみに31364項目のうち最も長いのは「神学校および聖職への受けいれにおける、同性愛傾向を有する人物の召命を吟味するための基準に関する手引き」だった。
ラッキー クッキー GSM方式ー
— ラッキーマン登場bot (@_lucky_cookie) October 20, 2015
ラッキー クッキー 現代用語の基礎知識ー
— ラッキーマン登場bot (@_lucky_cookie) October 20, 2015
とっても!ラッキーマン 1 (ジャンプコミックスDIGITAL)
- 作者: ガモウひろし
- 出版社/メーカー: 集英社
- 発売日: 2012/06/29
- メディア: Kindle版
- この商品を含むブログ (1件) を見る