Ruby on Rails 3 и Поиск книг Google - PullRequest
       10

Ruby on Rails 3 и Поиск книг Google

7 голосов
/ 09 сентября 2010

Я пытаюсь начать использовать API данных Google для Поиска книг Google в своем приложении Ruby on Rails 3, и я даже не понимаю, с чего начать. Какие драгоценные камни мне нужны? Что мне нужно сделать, чтобы сделать что-то простое, например, поиск книг с названием Foobar?

Ответы [ 3 ]

12 голосов
/ 08 декабря 2011

В связи с проблемой устаревания: я только что опубликовал GoogleBooks , упаковщик Ruby, который позволяет пользователям запрашивать книги точно описанным способом.

Он обновлен, чтобы подключаться ксовременный API Google, поэтому на него не влияет недавнее устаревание API поиска книг Google.

6 голосов
/ 17 ноября 2010

Если вы хотите использовать Google Книги для получения информации о книгах, вы можете использовать их API данных: http://code.google.com/apis/books/docs/gdata/developers_guide_protocol.html

Отправка запросов на URL-адрес, такой как http://books.google.com/books/feeds/volumes?q=isbn:9780974514055, вернет XML синформация о книге.Вы можете использовать драгоценный камень Nokogiri для анализа результата (http://nokogiri.org/).

Одна вещь, о которой нужно знать, это то, что, чтобы получить полное описание книг, вам нужно получить запись вместотолько результаты фида.

Вот краткий пример того, как вы можете получить информацию о книге из 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
0 голосов
/ 09 сентября 2010

Если вы хотите использовать API, я думаю, вам придется использовать Jruby и их Java API.для поиска книг не существует ruby ​​api, в соответствии с этим: http://code.google.com/apis/books/docs/gdata/code.html

для соединения с Google, попробуйте использовать гем gdata.http://code.google.com/apis/gdata/articles/gdata_on_rails.html#SetupRails

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...