RubyでeBay
eBay APIを使ったシステムを検討中。Ruby版のeBay APIがあったので使ってみました。
ユーザー登録が3つ必要です。
まず、eBay Developer Centerで、登録。
本物のeBay(Production環境)にアクセスしたければ、eBay本体にユーザー登録。代わりにテスト環境(Sandbox)にアクセスしたければ、Sandbox Userに登録します。
ここまで登録したら、次のキーセットを取得。Sandbox用とProduction用をそれぞれ取得できます。
AppID
CertID
Auth Token
REST Token
Developer Centerには、.NETとJavaとPHPのサンプルが豊富。
でも、ただのWebAPIだから、どんな言語でも、コツコツとAPI叩いて実装できるハズです。もっとも、XMLパースとAPI仕様書(PDF:1800ページ!)を読むことが苦でなければ、ですが・・・コレは、さすがにツラいw
eBayには Rubyの情報はホスティングされていませんでしたが、
RubyforgeでeBay APIを発見しました(作者のブログが詳しい)。
バージョン番号が小さいけれど、ソースやRDocを読むとかなりしっかりと作りこまれているようです。
としたら、
Ebay::Api.configure do |ebay|
ebay.use_sandbox = true
ebay.auth_token = 'Your Sandbox Token'
ebay.dev_id = 'Your Sandbox DevID'
ebay.app_id = 'Your Sandbox AppID'
ebay.cert = 'Your Sandbox CertID'
end
include Ebay::Types
ebay = Ebay::Api.new
begin
begin
response = ebay.get_search_results( :query => 'apple & ipod' )
response.search_result_items.each do |r|
puts r.item.title
end
end while response.has_more_items
rescue Ebay::RequestError => e
e.errors.each do |error|
puts error.long_message
end
end
など。後はRDocとeBay APIリファレンスを読むべし!
それにしても、日本から撤退したからなのか、あまりにも日本語情報が少なくておどろいた。
あと、実装方法として、Ruby On RailsにすべきかPHPにすべきか、あるいはJavaにするか・・・ここが悩ましいところで、いろんな可能性を考えているうちに、コレを見つけました。開発が始まったばかりなので、新しいAPIに準拠している点が魅力かもしれません(PHPのService_Ebayは開発が止まってるようだ)。
でも、採用するかどうかは未定。なぜなら、Railsを使うこと自体が微妙なところなので。もうちょっと考えてみる。

