Getty Images APIでRubyを使って画像検索

スポンサーリンク

Getty Images の API を Ruby から使って試してみたので、コードを残しておきます。Getty Images は、写真が膨大にストックしてあるウェブサイトです。API が公開してある。

ストックフォト、ロイヤリティフリー写真、ビデオ映像、音楽 | Getty Images
Getty Images API – Connect Image API: Stock Photo and Video API Integration Service | Getty Images

【お知らせ】 英単語を画像イメージで楽に暗記できる辞書サイトを作りました。英語学習中の方は、ぜひご利用ください!
画像付き英語辞書 Imagict | 英単語をイメージで暗記
【開発記録】
英単語を画像イメージで暗記できる英語辞書サービスを作って公開しました
スポンサーリンク

API ドキュメントについては、以下の GitHub ページ等を参照、Ruby 用のライブラリも用意してありました。

https://github.com/gettyimages/gettyimages-api
https://github.com/gettyimages/gettyimages-api_ruby
Swagger UI

APIキー取得とRubyライブラリを使うための準備

まず、API key と secret を取得するために、Mashery Member のアカウントを取得する必要があります。既に持っていればサインイン。

Register for an account | Getty Images API

サインアップしたら、サインインして API key と secret を取得します。

Ruby 用のライブラリは、現時点(2015/03/11)で rubygems.org に公開されていないので、ローカルに落としてビルドする。README 通りに進めればOK。

Getty Images からキーワードで画像を検索して取得するコード

以下のコードを書いてみました。テスト用なので、例外処理などいい加減です。レスポンスは JSON で返ってきます。API key, API secret の箇所は取得したものに変更。

test_getty_images.rb

ConnectSdk.new で作ったオブジェクトに、メソッドをチェインして検索の条件を追加していく書き方で、JSONレスポンスを取得できます。画像検索用のAPIですと、以下ソースの define_method で定義してある with_*** のメソッドが使える。

https://github.com/gettyimages/gettyimages-api_ruby/blob/master/ConnectSDK/lib/SearchImages.rb

ファイルに実行権を与えてテスト。

検索条件にあった画像の情報を取得できました。簡単に使えて良い感じですね。商用利用に関してとか利用規約の詳細をまだ確認してないので、実際に使用するかどうかはまだ決めていませんけれど。

スポンサーリンク
私は以下の本で Ruby を覚えました。メタプログラミングRubyは入門を超える内容で難しめです。
 
スポンサーリンク

Leave Your Message!