Skip to content

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

License

Notifications You must be signed in to change notification settings

pavzari/readerlet

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

37 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

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

About

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

Resources

License

Stars

Watchers

Forks

Packages

No packages published