Ebook library which can handle EPUB2/EPUB3 and Kindle format
Project description
About EbookLib
EbookLib is a Python library for managing EPUB2/EPUB3 and Kindle files. It’s capable of reading and writing EPUB files programmatically (Kindle support is under development).
The API is designed to be as simple as possible, while at the same time making complex things possible too. It has support for covers, table of contents, spine, guide, metadata and etc.
EbookLib is used in Booktype from Sourcefabric, as well as sprits-it!, fanfiction2ebook, viserlalune and Telemeta.
Packages of EbookLib for GNU/Linux are available in Debian and Ubuntu.
Sphinx documentation is generated from the templates in the docs/ directory and made available at http://ebooklib.readthedocs.io
Usage
Reading
import ebooklib from ebooklib import epub book = epub.read_epub('test.epub') for image in book.get_items_of_type(ebooklib.ITEM_IMAGE): print image
Writing
from ebooklib import epub book = epub.EpubBook() # set metadata book.set_identifier('id123456') book.set_title('Sample book') book.set_language('en') book.add_author('Author Authorowski') book.add_author('Danko Bananko', file_as='Gospodin Danko Bananko', role='ill', uid='coauthor') # create chapter c1 = epub.EpubHtml(title='Intro', file_name='chap_01.xhtml', lang='hr') c1.content=u'<h1>Intro heading</h1><p>Zaba je skocila u baru.</p>' # add chapter book.add_item(c1) # define Table Of Contents book.toc = (epub.Link('chap_01.xhtml', 'Introduction', 'intro'), (epub.Section('Simple book'), (c1, )) ) # add default NCX and Nav file book.add_item(epub.EpubNcx()) book.add_item(epub.EpubNav()) # define CSS style style = 'BODY {color: white;}' nav_css = epub.EpubItem(uid="style_nav", file_name="style/nav.css", media_type="text/css", content=style) # add CSS file book.add_item(nav_css) # basic spine book.spine = ['nav', c1] # write to the file epub.write_epub('test.epub', book, {})
License
EbookLib is licensed under the AGPL license.
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
File details
Details for the file EbookLib-0.17.1.tar.gz
.
File metadata
- Download URL: EbookLib-0.17.1.tar.gz
- Upload date:
- Size: 111.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/1.12.1 pkginfo/1.4.2 requests/2.21.0 setuptools/39.0.1 requests-toolbelt/0.8.0 tqdm/4.28.1 CPython/3.7.0
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | fe23e22c28050196c68db3e7b13b257bf39426d927cb395c6f2cc13ac11327f1 |
|
MD5 | 9b640a0673d97ac57795819844d33828 |
|
BLAKE2b-256 | 00387d6ab2e569a9165249619d73b7bc6be0e713a899a3bc2513814b6598a84c |