A Tkinter-based application for downloading and merging story parts from the Flibusta website into a single EPUB file.
- Python 3.7 or higher
- Git (for cloning the repository)
When you first clone this repository, follow these steps to set up the virtual environment:
-
Create the virtual environment:
python -m venv .venv -
Activate the virtual environment:
.\.venv\Scripts\Activate.ps1
If you get an execution policy error, you may need to run:
Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUser
-
Install dependencies:
pip install -r requirements.txt
If you need to update to a newer version of Python, follow these steps:
-
Deactivate the current virtual environment (if activated):
deactivate
-
Remove the old virtual environment:
rmdir .venv -Recurse -Force
-
Install the new Python version from python.org or your package manager.
-
Recreate the virtual environment with the new Python version:
python -m venv .venv -
Activate the new virtual environment:
.\.venv\Scripts\Activate.ps1
-
Reinstall dependencies:
pip install -r requirements.txt
Simply double-click run.bat to execute the script. This will:
- Activate the virtual environment
- Run
flibusta_downloader.py
Alternatively, run from PowerShell:
.\run.batActivate the virtual environment and run the script manually:
.\.venv\Scripts\Activate.ps1
python .\flibusta_downloader.pyOr run it directly with the Python executable from .venv:
.\.venv\Scripts\python.exe .\flibusta_downloader.pyThe project requires the following Python packages (listed in requirements.txt):
- requests - HTTP library for fetching web pages
- beautifulsoup4 - HTML/XML parsing library
- six - Python 2 and 3 compatibility utilities (required by epubmerge)
Additionally, the project uses:
- epubmerge - Local module for merging EPUB files (located in
../EpubMerge/)
.
├── flibusta_downloader.py # Main application script
├── test_python.py # Test file
├── run.bat # Batch script to run the application
├── requirements.txt # Python dependencies
├── README.md # This file
├── .venv/ # Virtual environment (created after setup)
├── output/ # Downloaded EPUB files
├── data.json # Data file
└── [story_folders]/ # Organized story directories
- Launch the application using
run.bator manually run the script - Enter the Flibusta story URL in the interface
- (Optional) Enter the last update date to filter for new parts
- Select which story parts to download
- Click "Save story epub" to download and merge the selected parts
- The merged EPUB file will be saved to the
output/folder
Make sure you have activated the virtual environment and installed all dependencies:
.\.venv\Scripts\Activate.ps1
pip install -r requirements.txtRun this command to allow script execution:
Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUserCheck your Python version:
python --versionIf needed, follow the "Updating Python Version" section above.
The application logs its activity to flibusta_downloader.log in the project root directory. Check this file for debugging information.