Books database / Mine
From WhyNotWiki
Books database edit (Category edit) .
Subtable of: Physical media database
[edit] Extra fields
Private?: Don't show on web site.
Why I acquired: {required for class, it was recommended to me, found it on my own, etc.}
Where it is now: {at work, in storage in the box labelled "stuff", on my bookshelf, on loan}
On loan?: If on loan, to whom and when
Details scraped?: Boolean.
Emotions evoked: Foreign key to Emotions table
Read it? / Reading progress Maybe make it a scale rather than a boolean so that I can tell which books I've started and not finished.
[edit] How to get there: Phase 1:
Import from Personal DB.mdb.
Make a script that takes a receipt as its input, parses out all ISBN numbers, and stores them in my books database with IOwnIt=true. While I'm at it, grab title and price_paid.
Problem: amazon's e-mailed receipts don't have ISBN. But on their web site, I can view a complete order history. For each order, it doesn't have ISBNs, but it has links to the product page. So on pass 1, I can store all links to product pages. On pass 2, visit product pages and grab ISBNs. Or... just manually enter ISBNs, from back of book, using the recept e-mails as a checklist to be systematic and make sure I'm not missing anything. Time estimate: for manual entry, 2 hours. That sounds like the fastest way.
Make a Rails app with scaffolding for CRUD operations.
Make a script that scrapes book details given an ISBN number.
For all books in my database, verify details: Query for details from reliable source (like Amazon). Manually verify. Press a single button to accept (and override any existing details for that book). Once a book's nonvolatile (immutable) details are scraped, that should never need to be done again, so set a flag.
As part of details scrape, download image of book cover.
[edit] To do
Books in progress (not finished reading) :conditions => "reading_progress > 0.0 and reading_progress < 1.0" Books I own :conditions => "i_own = true and private = false" Wish list :wish_list_items belongs_to :books :wish_list_items belongs_to :user scraper
