2010-07-20 17 views
22

Mi aplicación necesita recuperar información sobre cualquier libro publicado basado en un ISBN, título o autor proporcionado. Este no es un requisito único: sitios como Amazon.com, Chegg.com e incluso software como Book Collector parecen ser capaces de hacerlo fácilmente. Pero no he podido replicarlo.¿Cómo obtener los metadatos del libro?

Para aclarar, no necesito buscar en toda la base de datos de libros --- solo un subconjunto limitado que se ha ingresado, como en una colección de libros. La base de datos simplemente me permitiría etiquetar los libros ingresados ​​con los metadatos necesarios para habilitar la búsqueda en ese subconjunto de libros. Así que la escala no es el problema aquí --- obtener los metadatos es.

Las opciones que he probado son:

  1. Raspe Amazon. Raspar las páginas regulares de Amazon no era muy robusto para cosas como autores perdidos, y mientras raspaba las páginas móviles más pequeñas era más rápido, compartían los mismos problemas con la robustez de la extracción. Además, incorporar esto en una aplicación es una clara violación de los Términos de Servicio de Amazon.
  2. Raspe la Biblioteca del Congreso. Si bien esto parece tener menos ramificaciones legales, la facilidad y la solidez fueron nuevamente problemas.
  3. ISBNdb.com API. Si bien el servicio es gratuito hasta cierto punto, y hace un buen trabajo devolviendo los metadatos necesarios, necesito hacer esto para más de 500 libros a diario, en cuyo punto este servicio cuesta dinero proporcional al uso. Preferiría una solución de pago gratuita o de una sola vez que me permita hacer lo mismo.
  4. Google Book Data API. Si bien esto parece proporcionar la información que necesito, no puedo mostrar la vista previa del libro como lo requieren sus términos de servicio.
  5. Compre una licencia de una base de datos de libros. Por ejemplo, compañías como Ingram o Baker & Taylor proporcionan estos catálogos a minoristas y bibliotecas. Esta solución es obviamente costosa, así que espero que haya una solución más elegante que me he perdido. Pero si no, y alguien en SO ha tenido una buena experiencia con una base de datos en particular, estoy dispuesto a ir con eso.

He intentado describir mi enfoque en detalle para que otros con menos libros puedan aprovechar las soluciones anteriores. Pero teniendo en cuenta mis requisitos, estoy a punto de recuperar los metadatos de los libros, por lo que cualquier puntero es muy apreciado.

+0

¿Has probado [Goodreads API] (https://www.goodreads.com/api)? – Veenit

Respuesta

4

Dado que es poco probable que tenga que recuperar los mismos 500 libros cada día: almacene los datos recuperados de isbndb.com en una base de datos y llénelos libro por libro.

+0

Me gustaría hacer esto, pero el límite de 500 libros por día es una limitación importante siempre que cargue inventarios grandes (~ 30,000) en la base de datos. Sería ideal para hackear juntos una API o adquirir acceso a una base de datos existente que podría utilizar sin límites en el número de búsquedas. – Saketh

+0

con esa gran cantidad de artículos parece que va por la ruta profesional. Dudo que ningún servicio te permita básicamente clonar sus bases de datos sin pagarles dinero (serio). – akira

+0

El problema es que la entrada está escalonada (por ejemplo, 10,000 libros a la vez, luego ninguno durante un tiempo), pero la entrada se debe hacer de una vez. – Saketh

1

Por lo que parece, una gran cantidad de bibliotecas y otras organizaciones a tomar la información como "ISBN" disponible a través de legibles por máquina Catalogación aka MARC, usted puede encontrar más información al respecto, así here.

Ahora que conozco el término "correcto" para buscar, descubrí WorldCat.org.

Tal vez todo esto MARC le da un nuevo tipo de una idea :)

+0

No hay formas razonables de abrir o pagar pero son fáciles de usar para resolver el problema utilizando registros MARC, ya que los sitios como WorldCat generalmente requieren que una sea una biblioteca para acceder a su API de búsqueda. Me he sorprendido, ¡porque uno pensaría que sería fácil encontrar un catálogo público de libros! – Saketh

+0

, por lo que no puede usar la API de búsqueda (http://worldcat.org/devnet/wiki/SearchAPIDetails)? – akira

+0

La API de WorldCat utiliza una clave de acceso: he solicitado una, pero si pudiera encontrar una solución independiente, sería genial. – Saketh

Cuestiones relacionadas