--- author: '' category: '' date: 2012/07/13 12:22 description: '' link: '' priority: '' slug: quick-hack-to-catalog-your-books tags: python title: Quick Hack to Catalog your Books type: text updated: 2012/07/13 12:22 url_type: '' --- If you have actual, paper books and want to catalog their info quickly, this bookdata.py script may be handy: .. code-block:: python import sys import time import gdata.books.service import json def get_book_info(isbn): print "Looking for ISBN:", isbn google_books = gdata.books.service.BookService() result = google_books.search('ISBN %s '%isbn) data = [x.to_dict() for x in result.entry] if not data: print "No results" return title = data[0]['title'] with open(title+'.json','w') as f: f.write(json.dumps(data)) print "Guardada info de '%s' en '%s.json'" %(isbn, title) if __name__ == "__main__": while True: isbn = sys.stdin.readline().strip() if isbn: get_book_info(isbn) time.sleep(1) What does it do? It reads ISBN numbers from standard input and saves the book's info in a title.json file for later processing and formatting. If you want to edit that information, you can just do it or you can try doing a little script using `jsonwidget `_ like this:: python -c 'import jsonwidget; jsonwidget.run_editor("abook.json", schemafile="gbooks.schema")' Where abook.json is a file generated by the previous script and gbooks.schema is `this file. `_ Oh, and if your books have barcodes, you can just do:: zbarcam --raw | python bookdata.py Show your computer your books and let it do the rest :-) PS: I would love if someone gathered all this and made a nice personal book cataloguing thing.