Ebook library which can handle EPUB2/EPUB3 format
This project has been archived.
The maintainers of this project have marked this project as archived. No new releases are expected.
Project description
EbookLib-autoupdate
This is a fork of the popular Ebooklib library that aims to keep a package updated with changes from the original codebase. Any changes to [https://github.com/aerkalov/ebooklib] are merged into this package on a weekly basis.
About EbookLib
EbookLib is a Python library for managing EPUB2/EPUB3 files. It's capable of reading and writing EPUB files programmatically.
We are working on refreshing the project so please check and comment if you have your own ideas what needs to happen with the project.
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 = (
"<h1>Intro heading</h1>"
"<p>Zaba je skocila u baru.</p>"
'<p><img alt="[ebook logo]" src="static/ebooklib.gif"/><br/></p>'
)
# create image from the local image
image_content = open("ebooklib.gif", "rb").read()
img = epub.EpubImage(
uid="image_1",
file_name="static/ebooklib.gif",
media_type="image/gif",
content=image_content,
)
# add chapter
book.add_item(c1)
# add image
book.add_item(img)
# 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.
Authors
Full list of authors is in AUTHORS.txt file.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file ebooklib_autoupdate-0.18.1.tar.gz.
File metadata
- Download URL: ebooklib_autoupdate-0.18.1.tar.gz
- Upload date:
- Size: 118.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.6.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
f256b1e0dfcdf327d876765a68837b25f71ed2b954368ea654ab4db04cc89899
|
|
| MD5 |
d371a6feea6b5399d58fccb2285e0904
|
|
| BLAKE2b-256 |
0bd36bd59f6928bf77ec21253f89e6a13387194d8c09271ec800549c1bc1306e
|
File details
Details for the file ebooklib_autoupdate-0.18.1-py3-none-any.whl.
File metadata
- Download URL: ebooklib_autoupdate-0.18.1-py3-none-any.whl
- Upload date:
- Size: 27.3 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.6.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
7591fdec4b28844045ce0f47c8e041092affc6d22744f491d4f1d4f1e1e285c6
|
|
| MD5 |
aa5efb6bac91c5454461cff28a7cb06d
|
|
| BLAKE2b-256 |
de2d474e1fa27db78837a6c54d502d12b65478fa2f3556faaf15fa6b07363eeb
|