mirror of
https://gh.wpcy.net/https://github.com/bohdanbobrowski/blog2epub.git
synced 2026-04-24 02:36:23 +08:00
Convert blog (blogspot.com, wordpress.com...) or any website to epub using GUI, CLI or Python.
https://github.com/bohdanbobrowski/blog2epub
blogbloggingebookebook-downloaderebook-generatorebook-readerepub-generatorguilinuxlinux-desktopmacoswebsite-archivewindows
| .github/workflows | ||
| assets | ||
| blog2epub | ||
| packages/aur | ||
| tests/unit/blog2epub | ||
| .gitignore | ||
| .pylintrc | ||
| android.txt | ||
| BACKLOG.md | ||
| blog2epub.appdata.xml | ||
| blog2epub.desktop | ||
| blog2epub_build.py | ||
| blog2epub_gui_linux.spec | ||
| blog2epub_gui_macos.spec | ||
| blog2epub_gui_windows.spec | ||
| build_linux.sh | ||
| buildozer.spec | ||
| CHANGELOG.md | ||
| com.bohdanbobrowski.blog2epub.json | ||
| index.html | ||
| LICENSE | ||
| main.py | ||
| make_macos_dmg.sh | ||
| Makefile | ||
| poetry.lock | ||
| pyproject.toml | ||
| README.md | ||
blog2epub
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
Checkout for latest available builds.
Running from sources
git clone git@github.com:bohdanbobrowski/blog2epub.git
cd blog2epub
poetry install
poetry run blog2epubgui
Building own executable
Windows
poetry run build_gui_windows
macOS
poetry run build_gui_macos
And then to create dmg image with app:
./make_macos_dmg.sh
Android
Before you start, you'll need to install buildozer following this installation documentation.
poetry shell
buildozer -v android
Screenshots of GUI
Android (Google Pixel 6a)
Windows (11)
Linux (Manjaro Gnome)
macOS (Sonoma 14.4.1)
CLI
poetry run 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
poetry run blog2epub starybezpiek.blogspot.com
poetry run blog2epub velosov.blogspot.com -l=10
poetry run blog2epub poznanskiehistorie.blogspot.com -q=100
poetry run blog2epub classicameras.blogspot.com --limit=10 --no-images
Running tests
pytest ./tests
pytest --cov=blog2epub ./tests
pytest --cov=blog2epub --cov-report=html ./tests
Current version
v1.4.0
- custom destination folder
- UI improvements (better scaling, more rely on KivyMD default features)
- mypy and ruff pipeline job (via github Actions)
- Android build
- begin unit testing
- crawlers refactor - some part is done
Project backlog
And finally, a list known bugs and future plans for some new functions and enhancements: BACKLOG.md
Project road map:
- 1.0 - somewhat working
- 2.0 - fully working project, 90% unit tested and available builds for Android/Windows/Linux/MacOS