Manual de usuario de calibre, Publicación 2.73.0
Es esencial que importe el módulo init_calibre antes que cualquier otro módulo o paquete de calibre, pues esto configura el intérprete para ejecutar el código de calibre.
1.12.9 Documentación de la API de varias partes de calibre
Documentación de la API para la interfaz de la base de datos
Esta API es segura para subprocesos (utiliza un esquema de bloqueo de un escritor, varios lectores). Puede acceder a
esta API así:
from calibre.library import db
db = db('Path to calibre library folder').new_api
Si se trata de un complemento de calibre que es parte de la interfaz gráfica principal, se accede a ella de la siguiente
forma:
db = self.gui.current_db.new_api
class calibre.db.cache.Cache(backend)
Una copia en memoria caché del archivo metadata.db de la biblioteca de calibre. Esta clase también sirve como
un API multihilo para acceder a la base de datos. La copia en memoria se mantiene en forma normal para
maximizar el rendimiento.
SQLite se usa simplemente como una manera de leer y escribir eficientemente metadata.db. Toda la lógica de
lectura, clasificación, búsqueda y almacenamiento en la memoria caché de las tablas está desarrallada de nuevo.
Esto fue necesario para obtener el máximo rendimiento y flexibilidad.
add_books(books,
add_duplicates=True,
apply_import_tags=True,
preserve_uuid=False,
run_hooks=True, dbapi=None)
Añadir los libros especificados a la biblioteca. Los libros deben ser iterables de 2-tuplas, cada 2-tuplas de
la forma (mi,format_map) donde mi es un objeto de metadatos y format_map es un diccionario en
la forma {fmt: path_or_stream}, por ejemplo: {'EPUB':'/path/to/file.epub'}.
Devuelve un par de listas: ids,duplicados. ids contiene los identificadores de libros para todos los
libros de reciente creación en la base de datos. duplicados contiene el :code: (mi, format_map) para
todos los libros que ya existen en la base de datos según la sencilla detección heurística de duplicados
utilizada por has_book() (página 292).
add_custom_book_data(name, val_map, delete_first=False)
Añadir datos para name donde val_map es un mapa de book_ids a valores. Si delete_first es
True, se eliminarán todos los datos almacenados previamente.
add_format(book_id, fmt, stream_or_path, replace=True, run_hooks=True, dbapi=None)
Agregar un formato al libro especificado. Devuelve True si el formato se añadió con éxito.
Parámetros
replace – Si es True, sustituye el formato existente; en caso contrario, si el formato ya
existe, devuelve False.
run_hooks – Si es True, los complementos de tipo de archivo se ejecutarán sobre el
formato antes y después de ser añadido.
dbapi – Solo para uso interno.
all_book_ids(type=)
Conjunto fijo de todos los identificadores de libros conocidos.
288
Capítulo 1. Secciones