黒縁眼鏡は海を飛ぶ

IT中心にそこはかとなく

Rubyで今更Bing Search API

RubyでBing Search API使ってみる

といってもgemがあるようなので簡単にできそう(開始時点)

動画検索したいなぁと思っているので、検索結果をいい感じに標準出力することをゴールに設定して、いざ。


まずは登録

Bing Search API

上記URLから登録しましょう。
Microsoftアカウントがあれば即座に登録できます。

無料で利用しようとすると50000トランザクション/月の制限があるようですが、特に問題はないでしょう。


gemを使う

本当はgemに頼らずやってみたいところなんですが、はやく寝たいしRubyよくわかってないしで頼り切ろうと思います。

$ gem install searchbing
Fetching: searchbing-0.2.4.gem (100%)
Successfully installed searchbing-0.2.4
Parsing documentation for searchbing-0.2.4
Installing ri documentation for searchbing-0.2.4
Done installing documentation for searchbing after 0 seconds
1 gem installed


実装

参考にさせていただいたソースほぼそのままで申し訳ないですが、以下のようになりました。

# coding: utf-8

require 'searchbing'

# アカウント情報にある「プライマリ アカウント キー」を入力
key = ""
query = "クトゥルフ神話"

bing = Bing.new(key, 10, 'Video')
results = bing.search(query)

puts "#{results[0][:VideoTotal]}"

count = 1

results[0][:Video].each do |r|
  puts "#{count}"
  puts "%10s %s"%["Title:",r[:Title]]
  puts "%10s %s"%["URL:",r[:MediaUrl]]
  puts "%10s %s"%["Thumbnail:",r[:Thumbnail][:MediaUrl]]
  puts
  count += 1
end

実行すると以下のような結果が得られます。

331000 件
1
    Title: 実はめっちゃ面白いクトゥルフ神話TRPG
      URL: http://www.nicovideo.jp/watch/sm26000801
Thumbnail: http://ts4.mm.bing.net/th?id=OVP.V94ba62abc8d996ed12483c706f05e9cc&pid=15.1&W=160&H=118

2
    Title: 【ゆっくり実況】常識破りなクトゥルフ神話TRPGpart30
      URL: https://www.youtube.com/watch?v=Lc-JHw-equg
Thumbnail: http://ts4.mm.bing.net/th?id=OVP.Va234d15dbc86ba58d39cb6e9867f67b6&pid=15.1&W=160&H=89

(略)

10
    Title: 【ゆっくり実況】鬼畜魔理沙のクトゥルフ神話探索紀行 Episode:07
      URL: https://www.youtube.com/watch?v=XQm8uaQqkow
Thumbnail: http://ts3.mm.bing.net/th?id=OVP.V7dcb272522ecbff0ccf7f75ee759fba6&pid=15.1&W=160&H=96

gemの使い方をちょっと勉強できたのは勿論ですが、sprintf的な書き方をRubyだとこうやるんだーという発見もあってよかったです。

クトゥルフ神話TRPGおもしろいのでおすすめです。セッション再現動画しか見たことないですけど。。。


謝辞

Bing Search APIとRubyを使って簡単に検索エンジンを作る方法