Skip to main content

A command-line utility for extracting and packaging web content for offline reading.

Project description

PyPI Tests

A CLI utility for extracting readable content from web pages. Converts web articles to clean HTML or plain text using mozilla/readability. Extracted content can be packaged into EPUB or printed to stdout.

Includes Send to Kindle integration via the stkclient, allowing sending created EPUB articles directly to your Kindle device for offline reading.

Installation

Install using pip or pipx:

pip install readerlet
pipx install readerlet

Note that this utility requires Node.js.

For convenience, the nodejs-bin package containing node binary & npm can be installed optionally as an extra dependency:

pip install 'readerlet[node]'

Usage

For help, run:

readerlet --help

The readerlet send packages web content as EPUB file and sends it to your Kindle. You must first authorize the application with readerlet kindle-login. This feature stores credentials locally.

readerlet kindle-login
readerlet send <url>

To send local file instead:

readerlet send <path/to/local/file>

The extract command extracts content from URL and outputs an EPUB file to specified directory if used with -e flag:

readerlet extract <url> -e <output-dir>
readerlet extract https://example.com -e .

To print the extracted content to stdout as html or just text:

readerlet extract <url> -o html
readerlet extract <url> -o text

Both extract and send commands accept -i and -h flags that remove image-related elements and hyperlinks from content.

Remove hyperlinks:

readerlet extract <url> -h
readerlet send <url> -h

Remove images and hyperlinks:

readerlet extract <url> -i -h -o html
readerlet send <url> -i -h

Development

First checkout the code. Then create a new virtual environment:

cd readerlet
python -m venv venv
source venv/bin/activate

Install the dependencies and dev/test dependencies:

pip install -e '.[test]'

To run the tests:

pytest

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

readerlet-0.2.0.tar.gz (17.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

readerlet-0.2.0-py3-none-any.whl (16.8 kB view details)

Uploaded Python 3

File details

Details for the file readerlet-0.2.0.tar.gz.

File metadata

  • Download URL: readerlet-0.2.0.tar.gz
  • Upload date:
  • Size: 17.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.12.1

File hashes

Hashes for readerlet-0.2.0.tar.gz
Algorithm Hash digest
SHA256 ac44caf2713d05b177d4f1806ee8b4c19bf11441f35d7e657fbe6342b8f3e801
MD5 98e53446f7bda8b7253292bbfe5d9932
BLAKE2b-256 f378f77493299a10fa20070e14a3641c690e2fb95928465cfac39281c1e95bb3

See more details on using hashes here.

File details

Details for the file readerlet-0.2.0-py3-none-any.whl.

File metadata

  • Download URL: readerlet-0.2.0-py3-none-any.whl
  • Upload date:
  • Size: 16.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.12.1

File hashes

Hashes for readerlet-0.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 2d1623ddf594e4de92166743429e7041d6353c2840573594fb904e4309fdcc05
MD5 bb98e7d906d9a91e12f11036a94db80b
BLAKE2b-256 44cc1d70ce7cc94f901f9f38ea7e7052c197f08e23baf5975463fdde081f5bf9

See more details on using hashes here.

Supported by

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