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:
- 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.
- Raspe la Biblioteca del Congreso. Si bien esto parece tener menos ramificaciones legales, la facilidad y la solidez fueron nuevamente problemas.
- 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.
- 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.
- 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.
¿Has probado [Goodreads API] (https://www.goodreads.com/api)? – Veenit