I built something similar using Google Books. You'll definitely want to
create a mechanism for caching the cover image URLs or else you are going
to run into the API's daily limit (which is 1000 by default I think). An
easy way to do it would be to store the URL and an identifier such as a
bib record number or ISBN as a pair in a Solr index or SQL database. When
the page loads, you can have either the client side or the server side
fetch the image URL based on the current identifier number and display it
on the page.

I built a new books display using Google Books that shows an automatically
changing feed of recently added books. I ended up creating a script that
runs each day, and rather than indexing the image URLs it generates a
static HTML page for the display, which contains all the complex
formatting so that it doesn't have to happen with each page load. You can
see it here:

Josh Welker

-----Original Message-----
From: Code for Libraries [mailto:[log in to unmask]] On Behalf Of
Adam Wead
Sent: Tuesday, November 05, 2013 9:14 AM
To: [log in to unmask]
Subject: [CODE4LIB] display book covers

Hi all,

Anyone have some good resources about tools for gathering book cover
images?  I'm building that into our next catalog update, which uses
Blacklight, but I'm not necessarily looking for Rails-only approaches.  My
questions are more general:

What sources are out there?  (ex. Google Books, amazon)

Making it work?
I'm trying out Google Books at the moment, just making a call to their
API.  This can be asynchronously and loaded after the rest of the page, or
cached, perhaps even store the url in solr or a database table?

I am trying out a Google Books gem[1], which is just a wrapper for the

Other thoughts?

Thanks in advance,


Adam Wead
Systems and Digital Collections Librarian Library + Archives Rock and Roll
Hall of Fame and Museum
[log in to unmask]

This communication is a confidential and proprietary business
communication. It is intended solely for the use of the designated
recipient(s). If this communication is received in error, please contact
the sender and delete this communication.