Открытая Python-библиотека для обработки 3D-данных
Бесплатная Python 3D-библиотека для создания приложений обработки 3D-данных. Позволяет генерировать сцены, выравнивание поверхностей, 3D-визуализацию и многое другое.
Формат файлов электронных книг становится всё более популярным с каждым днём. Он является сокращением от «electronic book» и позволяет пользователям читать его на электронных устройствах, таких как компьютер или портативное устройство, что упрощает и улучшает общий процесс обучения. Он стоит значительно дешевле по сравнению с печатными книгами, поскольку не требует печати на бумаге.
EbookLib — очень полезная открытая библиотека Python для работы с электронными книгами, которая позволяет разработчикам программно управлять файлами EPUB2, EPUB3 и Kindle через бесплатный Python. Библиотека очень проста в использовании и может с лёгкостью выполнять сложные задачи. В её функционал входят несколько важных задач, таких как чтение книг EPUB, создание EPUB, создание глав, создание изображений из локальных файлов, обложки, определение оглавления, добавление стилей и форматирования, спайн, гайд, метаданные и т.д.
Начало работы с EbookLib
EbookLib требует Python 2.7 и Python 3. EbookLib доступен в pip, вы можете легко скачать его и установить на свой компьютер. Пожалуйста, используйте следующую команду для плавной установки.
Установите EbookLib через pip
pip install EbookLib Вы можете скачать скомпилированную общую библиотеку из репозитория Github.
Как создать EPUB‑документы с помощью Python?
Open source библиотека EbookLib предоставляет полную функциональность для создания EPUB документов всего лишь несколькими строками кода. Библиотека предлагает несколько важных функций, связанных с созданием и управлением новыми документами, таких как создание вводных глав, добавление метаданных, определение стиля по вашему выбору, вставка новых глав, создание оглавления, добавление разделов, автоматическое создание ссылок на главы, добавление навигационных файлов, создание spine и многое другое.
Как создать EPUB‑файлы с помощью библиотеки Python?
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 = (
"Вводный заголовок
"
"Заба прыгнула в баре.
"
'![[ebook logo]](static/ebooklib.gif)
'
)
# 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, {})
Чтение существующих EPUB‑документов с помощью Python
Библиотека с открытым исходным кодом EbookLib предоставляет разработчикам программного обеспечения возможность открывать и читать существующие файлы EPUB2 и EPUB3 в их собственных приложениях на Python. Библиотека также включает полную поддержку формата Kindle (пока только чтение). Для чтения книги EPUB необходимо передать полный путь к файлу EPUB в качестве аргумента функции `ebooklib.epub.read_epub()`. Следующий пример показывает, как выполнить эту задачу.
Как читать существующие документы EPUB через API Python?
import ebooklib
from ebooklib import epub
book = epub.read_epub('test.epub')
Управление элементами в EPUB‑документах с помощью Python
В файле EPUB поддерживаются различные элементы, такие как таблицы стилей, изображения, видео, звуки, скрипты и HTML‑файлы. Библиотека с открытым исходным кодом EbookLib предоставляет полную поддержку работы с элементами внутри EPUB‑документов. Она поддерживает несколько важных функций для работы с элементами, таких как получение элементов по их типу, получение элементов по их идентификатору, получение элементов по имени файла, получение по их типу медиа, возврат всех элементов для обработки неизвестных EPUB‑файлов и многое другое.
Получить детали элементов из документов EPUB через API Python
for item in book.get_items():
if item.get_type() == ebooklib.ITEM_DOCUMENT:
print('==================================')
print('NAME : ', item.get_name())
print('----------------------------------')
print(item.get_content())
print('==================================')