I’ve updated Booko to now check multiple sites for cover art. All the sites I use for data will return “No Image” style images for books which they don’t have covers for.
Such as this:
There’s no way to tell from the URL of the image if it’s one of these pretend covers, so I had to be a bit more clever about it. Since the image itself is always the same, I calculate the md5 sum of the image – if it matches a known “No Image” image, I move on to the next site.
Given an image URL, I calculate the md5 sum like this:
digest = Digest::MD5.hexdigest(open(url).read)
Which downloads the image and calculates the hash in one nice easy step. So, from now on, Books will be far more likely to have correct cover art images.
Done! Well, where possible. I requested the guys at “The Nile” add the “Format” of a book to their API on Sunday. Literally 8am on Monday I got the response that they’d implemented it! That’s super fast! Amazon already has the feature and I’ve added it to the Fishpond scraper, so we would should be set. Unfortunately, not all books actually list the format of the book.
I can see a common problem I have with getting book data from multiple sites – not all book “records” at each site contains all the information. Sometimes one site will have the format, but maybe not a good image of the cover. Sometimes a site will have neither. But generally, I just pick one sites data and go with that. It’s fast and easy. To get complete data, it looks like I’ll have to start making book records composites from multiple sites.
Some more small changes this arvo:
- Changed the separator from solid to dotted, moved it around a bit, and added separators between the recent searches / your searches sections.
- The “Last Updated” section now tells you how long ago the book was updated in relative terms.
- The Cart has been shrunk and now has a dotted line to clearly separate it from the other content.
I’ve added another feature to Booko – Booko now remembers books you’ve recently viewed. This should save you from having to search again, or add them to your cart to keep track of books you’re interested in. Of course, it’s only session based – lists will be different on different computers / browsers.
I’ve updated the program which runs off and finds the prices on the 15 shops Booko scans. Previously, it would search for a single book at a time, but would search all shops at the same time. Now it will check *all* books which are waiting for prices at the same time.
One of the problems with the old approach is that some stores seem to be down as much as up – the price grabbing code will patiently wait until all shops have answered or the connection times out. When a site is down, other users may be waiting for over a minute for their books to be updated. The new approach means everyone should be getting prices as soon as they’re available.
So, if you’re the kind of person who does a search, then opens multiple tabs from the search result, you should find the results are populated much, much faster.
Searching around in my referrer list, I indirectly came across another Australian book seller SeekBooks. So I added it – this brings the total of shops searched from Booko up to 15.
One of the more interesting blogs I read is Core Economics, by Joshua Gans, a professor at Melbourne Business School. He recently published a book – Parentomics. In the comment section of the post where he announced it, I mentioned that he could find pricing for his book in a bunch of Australian book stores on Booko. He subsequently wrote a quick post on Booko – linking to books he’s published.
Most of the people who use Booko know that it’s currently a personal project that’s not been advertised very widely. The impact of being mentioned on a site like CoreEconomics was pretty exciting / terrifying to see.
That made me decide that its time for Booko to have it’s own blog rather than share my personal blog – so here it is. You can find all the all Booko posts on my personal blog.