calibrestekje¶
Library prototyping based on Calibre¶
Calibrestekje is a Python library which provides a way to work with the Calibre database outside the context of the Calibre desktop and web interfaces.
Generated SQLAlchemy database bindings (see sqlacodegen for more)
are provided which allow for read/write access to an existing Calibre
database. These bindings are more fine grained than Calibres database
interface and provide direct access to the Database table layer. The
bindings are generated from Calibre version 2.75.1
.
A flask extension is also provided for getting started with web prototyping. Please see flask-calibrestekje and the flask usage documentation for more.
Quick Example¶
from calibrestekje import Book, Publisher, init_session
session = init_session("sqlite:///mymetadata.db")
publisher = (session.query(Publisher)
.filter(Publisher.name == "MIT Press").one())
books = (session.query(Book)
.filter(Book.publishers.contains(publisher)))
print(f"Books published by MIT Press: {books.count()}")