Skip to main content

Python epubcheck wrapper

Project description

Python wrappers and CLI for EpubCheck

Linux/Windows/macOS Tests Version

A command line tool and lib that wraps EpubCheck for Python.

Introduction

The original EpubCheck is the standard Java-based validation tool for EPUB maintained by DAISY Consortium on behalf of the W3C, originally developed by the IDPF.

This package provides a Python libary and command line tool for convenient validation of EPUB files by wrapping the original EpubCheck 4.2.6.

  • Free software: BSD license

Installation

If you have Python on your system you can do the usual:

$ pip install epubcheck

You must have Python & Java installed on your system. The original Java EpubCheck command line client itself is bundled in the PyPi package.

This package is tested with Python 3.8 - 3.12 on Linux, Mac and Windows. It should also work with PyPy.

Quickstart

Command line usage examples

Validata all epub files in the current directory:

$ epubcheck

Validate a single EPUB file:

$ epubcheck /path/to/book.epub

Validate all files in /epubfolder and create a detailed Excel report::

$ epubcheck /path/epubfolder --xls report.xls

Show command line help::

$ epubcheck -h

Using epubcheck as a python library

from epubcheck import EpubCheck
result = EpubCheck('src/epubcheck/samples/invalid.epub')
print(result.valid)
print(result.messages)

Documentation

https://epubcheck.readthedocs.io/en/latest/

Development

Install poetry checkout this repository and run:

poetry install

Run code formatting, coverage, and tests with:

poe all

Changelog

5.1.0 - 2024-06-05

  • Update to epubcheck 5.1.0
  • Update dependencies
  • Remove support for Python 3.6 and 3.7
  • Add support for Python 3.11 and 3.12

4.2.6 - 2021-11-06

  • Bump versioning to match original epubcheck version
  • Modernize packaging and CI
  • Fix xls and csv export
  • Updated dependencies

0.4.3 - 2021-09-28

  • Update the epubcheck.jar to v4.2.6
  • Remove support for < Python 3.6

0.4.2 - 2019-08-07

0.3.1 - 2016-04-20

  • Added custom PY2/PY3 compat module and removed dependancy on six

0.3.0 - 2016-04-10

  • Add commandline support with Excel batch reporting
  • Moved development status from Alpha to Beta

0.2.0 - 2016-04-03

  • EpubCheck results as native python objects
  • More documentation

0.1.0 - 2016-04-01

  • First release on PyPI.

Authors & Contributors

Credits

EpubCheck is a project coordinated by IDPF. Most of the EpubCheck functionality comes from the schema validation tool Jing and schemas that were developed by IDPF and DAISY. Initial EpubCheck development was largely done at Adobe Systems.

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

epubcheck-5.1.0.tar.gz (30.8 MB view details)

Uploaded Source

Built Distribution

epubcheck-5.1.0-py3-none-any.whl (30.8 MB view details)

Uploaded Python 3

File details

Details for the file epubcheck-5.1.0.tar.gz.

File metadata

  • Download URL: epubcheck-5.1.0.tar.gz
  • Upload date:
  • Size: 30.8 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.6.1 CPython/3.11.1 Windows/10

File hashes

Hashes for epubcheck-5.1.0.tar.gz
Algorithm Hash digest
SHA256 bba4443284d96eab019240df10e51af0a0c4b63b1512f1c44e36a126abb38e9a
MD5 f37bef0d0a7fed11f2f4c8ab917355a2
BLAKE2b-256 953bd1c04efaf9bb9326ce9fd3bc9fe43731f6da4b7c0f2cfb7cc88b4f0ed013

See more details on using hashes here.

File details

Details for the file epubcheck-5.1.0-py3-none-any.whl.

File metadata

  • Download URL: epubcheck-5.1.0-py3-none-any.whl
  • Upload date:
  • Size: 30.8 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.6.1 CPython/3.11.1 Windows/10

File hashes

Hashes for epubcheck-5.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 05d99fe8f541c9e2c71c49fc5361af312392ef3a8b28bc3bada6ee079f4cb8d5
MD5 e43a92d6fa14adaacf883a212eabbf86
BLAKE2b-256 c060b0d1a10586effc198d6375e8814e8e4b49086f8c97de3b8e7abe710f3a00

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page