¿Cómo puedo buscar datos sobre un libro a partir de su número de código de barras?[cerrado]

StackOverflow https://stackoverflow.com/questions/106963

Pregunta

Estoy creando la aplicación de biblioteca más sencilla del mundo.Todo lo que quiero poder hacer es escanear el UPC (código de barras) de un libro usando un escáner típico (que simplemente escribe los números del código de barras en un campo) y luego usarlo para buscar datos sobre el libro...como mínimo, título, autor, año de publicación y número de catálogo Dewey Decimal o de la Biblioteca del Congreso.

El objetivo es imprimir una pequeña pegatina ("etiqueta del lomo") con el número de catálogo de la tarjeta que puedo pegar en el lomo del libro, y luego puedo clasificar los libros por número de catálogo de la tarjeta en los estantes de la biblioteca de nuestra empresa.De esa manera, los libros sobre temas similares tenderán a estar cerca unos de otros; por ejemplo, si sabes que estás buscando un libro sobre contabilidad, todo lo que tienes que hacer es buscar ALGÚN libro sobre contabilidad y verás la otra media docena. que tenemos justo al lado lo que hace que sea conveniente navegar por la biblioteca.

Parece haber muchas API web para hacer esto, incluidas Amazon y la Biblioteca del Congreso.Pero todo eso me resulta extremadamente confuso.Lo que realmente quiero es una función única de nivel superior que tome un número de código de barras UPC y devuelva algunos datos básicos sobre el libro.

¿Fue útil?

Solución

Hay una solución web muy sencilla en ISBNDB.com que quizás quieras consultar.

Editar: Enlace de documentación API actualizado, ahora también está disponible la versión 2

Enlace a precios y niveles aquí

Puede estar listo y funcionando en solo unos minutos (estos ejemplos son de API v1):

  • regístrese en el sitio y obtenga una clave para usar la API
  • prueba con una URL como:

    http://isbndb.com/api/books.xml?access_key={tu llave}&index1=isbn&results=details&value1=9780143038092

Los resultados = detalles obtienen detalles adicionales, incluido el número de catálogo de la tarjeta.

Además, generalmente el código de barras es isbn en isbn10 o isbn13.Sólo tienes que borrar los últimos 5 números si estás usando un escáner y recoges 18 números.

Aquí hay una respuesta de muestra:

<ISBNdb server_time="2008-09-21T00:08:57Z">
  <BookList total_results="1" page_size="10" page_number="1" shown_results="1">
    <BookData book_id="the_joy_luck_club_a12" isbn="0143038095">
      <Title>The Joy Luck Club</Title>
      <TitleLong/>
      <AuthorsText>Amy Tan, </AuthorsText>
      <PublisherText publisher_id="penguin_non_classics">Penguin (Non-Classics)</PublisherText>
      <Details dewey_decimal="813.54" physical_description_text="288 pages" language="" edition_info="Paperback; 2006-09-21" dewey_decimal_normalized="813.54" lcc_number="" change_time="2006-12-11T06:26:55Z" price_time="2008-09-20T23:51:33Z"/>
    </BookData>
  </BookList>
</ISBNdb>

Otros consejos

Nota:Soy el chico de LibraryThing, así que esto es una autopromoción parcial.

Echa un vistazo a esta respuesta de StackOverflow, que cubre algunas buenas formas de obtener datos para un ISBN determinado.

Para sus problemas, Amazon incluye un DDC simple (Dewey);Google no lo hace.La API de WorldCat sí, pero es necesario ser una biblioteca de OCLC para utilizarla.

La cuestión del ISBN/UPC es compleja.Prefiere el ISBN, si puedes encontrarlos.Los libros de bolsillo del mercado masivo a veces tienen UPC en el exterior y un ISBN en el interior.

Los miembros de LibraryThing han desarrollado algunas páginas sobre el tema y sobre los esfuerzos para mapear ambos:

Si compra en Borders, todos los códigos de barras de su libro estarán adhesivos con sus propios códigos de barras internos (llamados "BINC").Lo más molesto es que cualquier pegamento que utilicen se vuelve cada vez más difícil de eliminar limpiamente con el tiempo.No conozco ninguna API que los convierta.LibraryThing lo hace mediante captura de pantalla.

Para una API, elegiría Amazon.LibraryThing es una buena opción sin API, que resuelve BINC y agrega DDC y LCC para libros que no los tienen al consultar otras ediciones del "trabajo".

Lo que falta es la parte de la etiqueta.Alguien necesita crear una buena plantilla PDF para eso.

Editar Sería bastante fácil si tuvieras ISBN.pero convertir de UPC a ISBN no es tan fácil como quisiera.

Aquí hay un código javascript de http://isbn.nu donde se hace en el guión

if (indexisbn.indexOf("978") == 0) {
   isbn = isbn.substr(3,9);
   var xsum = 0;
   var add = 0;
   var i = 0;
   for (i = 0; i < 9; i++) {
        add = isbn.substr(i,1);
        xsum += (10 - i) * add;
   }
   xsum %= 11;
   xsum = 11 - xsum;
   if (xsum == 10) { xsum = "X"; }
   if (xsum == 11) { xsum = "0"; }
   isbn += xsum;
}

Sin embargo, eso solo convierte de UPC a ISBN. alguno del tiempo.

Quizás quieras mirar el página del proyecto de escaneo de códigos de barras, también: el viaje de una persona para escanear libros.

Entonces sabes sobre Servicios web de Amazon.Pero eso supone que Amazon tiene el libro y lo ha escaneado en la UPC.

También puedes probar el Base de datos UPC en http://www.upcdatabase.com/item/{UPC}, pero esto también está incompleto, al menos está creciendo.

La biblioteca de la base de datos del congreso también está incompleta con UPC hasta el momento (aunque es bastante completa) y es más difícil de automatizar.

Actualmente, parece que tendría que escribir esto usted mismo para tener una búsqueda de alto nivel que devuelva información simple (y pruebe cada servicio).

Suena como el tipo de trabajo que uno podría conseguirle a una pequeña empresa de software...

Más en serio, existen servicios que proporcionan una interfaz con el catálogo ISBN, www.literarymarketplace.com.

En worldcat.com, puedes crear una URL usando el ISBN eso lo llevará directamente a la página de detalles del libro.Esa página no es muy útil porque todavía es un raspado de HTML para obtener los datos, pero tienen un enlace para descargar los datos del libro en un par de formatos "estándar".

Por ejemplo, su libro de demostración: http://www.worldcat.org/isbn/9780060817084Tiene un enlace de descarga en formato "EndNote" http://www.worldcat.org/oclc/123348009?page=endnote&client=worldcat.org-detailed_record, y podrá recopilar los datos de ese archivo muy fácilmente.Eso está vinculado desde su propio número de OCLC, no desde el ISBN, pero el raspado para convertirlo no es difícil, y es posible que aún tengan una buena interfaz para hacerlo.

Mi esposa bibliotecaria usa http://www.worldcat.org/, pero eliminan el ISBN.Si puedes escanear eso, estás dorado.Al mirar algunos libros, parece que el UPC es el mismo o está relacionado con el ISBN.

Oh, estos chicos tiene una función para realizar la conversión de UPC a ISBN.

Usando el sitio web cosa de la biblioteca, puede escanear sus códigos de barras (el código de barras completo, no solo el ISBN; si tiene una "cuña" de escaneo, está de suerte) y crear su biblioteca.(Es una red social excelente; piense en StackOverflow para los entusiastas de los libros).

Luego, usando la sección HERRAMIENTAS, puede exportar su biblioteca.Ahora tiene un archivo de texto para importar/analizar y puede crear sus etiquetas, un catálogo de tarjetas, etc.

Me temo que el problema es el acceso a la base de datos.Las empresas pagan para que se les asigne una UPC, por lo que la base de datos no es de libre acceso.El Base de datos UPC El sitio mencionado por Philip es un comienzo, al igual que UPCData.info, pero fueron ingresados ​​por el usuario, lo que significa que están incompletos y posiblemente sean inexactos.

Siempre puedes ingresar el UPC en Google y obtener un resultado, pero eso no está muy automatizado.Pero lo hace bien la mayor parte del tiempo.

Creí recordar a Jon Udell haciendo algo como esto (por ejemplo, mira esto), pero se basaba exclusivamente en el ISBN.

¡Parece que has encontrado un nuevo proyecto en el que alguien puede trabajar!

Si desea utilizar Amazon, puede implementarlo fácilmente con LINQ a Amazon.

Al trabajar en el mundo de las bibliotecas, simplemente nos conectamos al pase del LMS en el código de barras y listo, vuelven los datos.Creo que hay varios proveedores de LMS gratuitos: Google para "películas de código abierto".

Nota:Esto probablemente funcione con el ISBN...

Puede encontrar una herramienta de búsqueda de ISBN implementada en PHP en Dawson interactivo.

Recomiendo frecuentemente usar API de afiliados de productos de Amazon (compruébalo aquí https://affiliate-program.amazon.com), sin embargo, también hay algunas otras opciones disponibles.

Si desea garantizar la exactitud de los datos, puede optar por una solución paga.GS1 es la organización que emite los códigos UPC, por lo que su información siempre debe ser precisa (https://www.gs1us.org/tools/gs1-company-database-gepir).

También hay una serie de bases de datos de terceros con información relevante como https://www.upccodesearch.com/ o https://www.upcdatabase.com/ .

Nada como una respuesta casi 5 años después del hecho, pero aquí está mi par de brillantes centavos.

Actualmente estoy construyendo algo que haría bien el trabajo... https://blinked.in - lo que se está convirtiendo rápidamente en la base de datos de códigos de barras UPC/EAN13 más grande (hemos agregado más de 7 millones de códigos de barras solo en la última semana), aunque todavía estamos en la etapa alfa de desarrollo, estamos introduciendo una API muy sencilla y de bajo costo para proporcionar precisamente este tipo de acceso a los datos.

Solo llevamos un par de meses en desarrollo, pero ya tenemos una plataforma web estable, una base de datos en rápida expansión y el deseo de mantener las cosas simples.

Espero que esto te ayude a ti, o a algún futuro lector, de alguna manera.

Actualizado

Nuestra API ya está disponible - https://blinked.in/api - y hemos incluido 100 llamadas gratuitas por día, y usted puede ganar crédito ayudándonos a descubrir nuevos códigos de barras - https://blinked.in/bandwidthaccount

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top