7

Ruby on Rails 3 アプリケーションで Google ブック検索用の Google Data API の使用を開始しようとしていますが、開始方法もわかりません。どのような宝石が必要ですか? Foobar というタイトルの本を検索するような簡単なことをするにはどうすればよいですか?

4

3 に答える 3

12

非推奨の問題のフォローアップ: GoogleBooksを公開しました。これは、ユーザーが説明されている方法で書籍を正確に照会できるようにする Ruby ラッパーです。

現在の Google API にフックするように更新されているため、Google Book Search API が最近廃止されても影響を受けません。

于 2011-12-07T22:01:35.267 に答える
6

Google ブックスを使用して書籍に関する情報を取得する場合は、データ API を使用できます: http://code.google.com/apis/books/docs/gdata/developers_guide_protocol.html

http://books.google.com/books/feeds/volumes?q=isbn:9780974514055のような URL に対してリクエストを行うと、本の情報を含む XML が返されます。Nokogiri gem を使用して結果を解析できます ( http://nokogiri.org/ )。

注意すべきことの 1 つは、書籍の完全な説明を取得するには、フィードの結果だけでなく、エントリを取得する必要があることです。

Google から書籍の情報を取得する方法の簡単な例を次に示します。

require 'open-uri'
require 'nokogiri'

class Book
  attr_accessor :title, :description
  def self.from_google(title)
    book  = self.new
    entry = Nokogiri::XML(open "http://books.google.com/books/feeds/volumes?q=#{title}").css("entry id").first
    xml   = Nokogiri::XML(open entry.text) if entry
    return book unless xml

    book.title       = xml.css("entry dc|title").first.text       unless xml.css("entry dc|title").empty?
    book.description = xml.css("entry dc|description").first.text unless xml.css("entry dc|description").empty?
    book
  end
end

b = Book.from_google("Ruby")
p b
于 2010-11-16T23:41:12.890 に答える
0

API を使用する場合は、jruby とその Java API を使用する必要があると思います。これによると、書籍検索用の Ruby API は存在しません: http://code.google.com/apis/books/docs/gdata/code.html

Google と接続するには、gdata gem を使用してみてください。 http://code.google.com/apis/gdata/articles/gdata_on_rails.html#SetupRails

于 2010-09-09T14:53:18.347 に答える