Skip to content

bohdanbobrowski/blog2epub

Repository files navigation

blog2epub

Maintenance MIT license GitHub all releases GitHub release (with filter) GitHub Release Date - Published_At

Convert blog to epub using command line or GUI.

Supported blogs:

  • *.blogspot.com
  • *.wordpress.com and some blogs based on WordPress

Main features

  • command line (CLI) and graphic user interface (GUI)
  • script downloads all text contents of selected blog to epub file,
  • if it's possible, it includes post comments,
  • images are downsized (to maximum 800/600px) and converted to grayscale,
  • one post = one epub chapter,
  • chapters are sorted by date ascending,
  • cover is generated automatically from downloaded images.

Example covers

Installation

  • for Windows and macOS users: available builds
  • python3 setup.py install

Running froum sources

git clone git@github.com:bohdanbobrowski/blog2epub.git
cd blog2epub
python -m venv venv
source ./venv/bin/activate
pip install -r ./requirements.txt
./blog2epubgui.py

Screenshots of GUI

Windows 10

macOS

Linux

Mint 21.2 Cinnamon

CLI

blog2epub [blog url] <parameters>

Parameters

-l/--limit=[x] - limit epub file to x posts
-s/--skip=[x] - skip x latest posts
-q/--images-quality=[0-100] - included images quality (default is 40)
-n/--no-images - don't include images

Examples

blog2epub starybezpiek.blogspot.com
blog2epub velosov.blogspot.com -l=10
blog2epub poznanskiehistorie.blogspot.com -q=100
blog2epub classicameras.blogspot.com --limit=10 --no-images

Planned features and known bugs

  • utilize GitHub Pages for this project documentation
  • there are some bugs in wordpress.com crawler
  • Linux app/package(s)
  • Android app
  • code needs some refactor: classes are too "nested" within each other
  • more crawlers (ex. GitHub Pages 🙃)
  • improve existing crawlers (allow)
  • improve GUI - configuration, allow to save in selected place etc.

Change Log

v1.2.6 - 2024-03-30

bugfix release

  • resistance to broken links
  • atom feed when skipped
  • better comments support
  • more random cover generator

» Complete Change Log here «