Subscribe to this feed July 10, 2007

PHP ISBN Lookup Tool

Basically, I needed a simple tool to help me catalogue my home book catalogue of over 1,000 books without having to type them all in by hand (or copy and paste from Amazon or wherever). Fortunately, I found this freely available online database, ISBNdb.com, which has a remote access application programming interface (API) designed to allow other websites and standalone applications use the vast collection of data collected by ISBNdb.com since 2003. Currently, they have just under 3 million books in their database - which is very substantial and sufficient for my purposes. While I needed this information for cataloging my home library, you could obviously use it for other uses such as building and verifying bookstore inventories, creating your own bookstore, automated cross-merchant price lookups over messaging devices or phones, or whatever.

Requirements

  • PHP 5.0.x (needed because I'm using the simplexml_loadfile() function to parse the XML generated by the ISBNdb API. Since I don't have PHP5 up and running on this site, I don't have a working demo. Sorry.)
  • ISBNdb Access Key (500 server requests/day free with any account. Sign up for a free account at: https://isbndb.com/account/create.html)
  • Barcode Scanner (Optional, but nice to have. I found one off of eBay for $.01 (+$10 shipping), MODEL NUMBER: LS1006-1000, SERIAL NUMBER SZ497, and it works like a charm!

Application Description

With this script, you simily enter a 10 or 13 digit ISBN number into the single form field and click submit. (with the barcode scanner I got, you just scan and a CR is automatically entered, so you don't have to type anything). The tool will retrieve and parse an XML file from the ISBNdb.com site, and print the results in a nicely formatted table, showing title, long title, authors, Dewey decimal number, LCC number, average new price, average used price, and estimated value (based on the condition of the book, which you can optionally enter as an A, B, C, D, or F "flag" prior to the ISBN number. In addition, the script will write the data to a text file, called "books.txt" in a very simple pipe "|" deliniated format.

That's pretty much it. You can easily configure it to your own uses, or use it to develop your own intereface to ISBNdb.com's API - which is really the meat of this tool.

Screenshots

Here's a screenshot. Sorry I don't have a working demo up and running:

PHP ISBN Lookup Tool

Source Code

The source code is available here. I've commented most of the sections, although if you have a question, feel free to contact me.

Good luck and have fun!