簡単にそりwそりすぎてソリになるRubyスクリプト

More than 1 year has passed since last update.

こんにちは。今年、転職ドラフトでリブセンスに入社した@saxtondreyです。

この記事はリブセンスアドベントカレンダー2枚目の19日目です。


そりすぎてソリになったw

  ぽきたw 魔剤ンゴ!? ありえん良さみが深いw

二郎からのセイクで優勝せえへん? そり!そりすぎてソリになったw
や、漏れのモタクと化したことのNASA✋
そりでわ、無限に練りをしまつ
ぽやしみ〜

皆さんも初めてこのコピペを見た時からツイッターオタク文法に囚われてしまい、「○○過ぎる」などと聞くとすぐにソリになってしまっていませんか?私はなっています。

ex)

- マメすぎて→豆になったw

- 暑すぎて→アッツ島になったw

しかし、ネタ切れ著しいので、単語を入れたらコピペの「ソリ」の部分を生成する、簡単なスクリプトを書きました。


概要

とりあえず頭韻を踏めばいいと思うので、MeCabを使った形態素解析で、最初の単語の読みを調べます。

そして、そのよみをGoogle Suggest APIに突っ込み、検索候補の一位を取ってきます。

このとき、「ぽきたw」を入力すると、「ぽきたw コピペ」などが返ってくることがありますが、今回は先頭の一単語の読みのみをAPIに投げるため、大体の場合、予測変換も一単語の身になると思われます。


コード

require 'kconv'                                                             

require 'natto'
require 'google_suggest'
nm = Natto::MeCab.new
yomi = nm.parse(ARGV[0].match(/.+(?=過ぎて)/).to_s.toeuc).toutf8.split("\n").first.split(',').last.tr('ァ-ン','ぁ-ん')

result = GoogleSuggest.suggest_for(yomi, region: 'jp')
puts "#{result.first}になったw"

nattoとgoogle_searchの2つのGemを入れています。Kconvで文字コードを変換しているのは、MeCabのインストール時に適当に文字コードを設定してしまったからか、入出力の文字コードを調整する必要が出てしまったからです。


やってみた

[saxtondrey@22:04:48 ~/work/ruby/sorisugiter]$ bundle exec ruby app.rb ソリ過ぎて

ソリオになったw

残念ながらソリになることはできませんでしたが、良さそうです。ほかの言葉でもいってみましょう。

[saxtondrey@22:17:47 ~/work/ruby/sorisugiter]$ bundle exec ruby app.rb キモ過ぎて

着物になったw

[saxtondrey@22:17:56 ~/work/ruby/sorisugiter]$ bundle exec ruby app.rb あるある過ぎて
アルファードになったw

[saxtondrey@22:20:57 ~/work/ruby/sorisugiter]$ bundle exec ruby app.rb おかし過ぎて
お菓子になったw

[saxtondrey@22:21:03 ~/work/ruby/sorisugiter]$ bundle exec ruby app.rb 歩き過ぎて
アルキメデスになったw

[saxtondrey@22:22:19 ~/work/ruby/sorisugiter]$ bundle exec ruby app.rb 遠過ぎて
トートバッグになったw

結構ジワる感じの出力が得られました。

サジェストの結果を再度形態素解析して、「名詞のみ」「入力そのものとは違うもの」にすると、さらにいろいろなものになれそうです。

そりでわ、無限に練りをしまつw