A Python desktop application built with Flet that allows users to search for and download books from Library Genesis (libgen.li) using Selenium WebDriver. The app includes OpenCV capabilities to scan images and then use it for filter results.
- 📚 Search for books on Library Genesis (libgen.li or libgen.is)
- ⬇️ Download books directly to your specified location
- 📷 Filter results by image
- 🎤 Convert speech to text from audio files
- 🔍 Detailed book information display
- 📊 Real-time download progress tracking
- 📱 Cross-platform compatibility (Windows, macOS, Linux)
Revistook_app/
├── src/
│ ├── application/
│ │ ├── interfaces/
│ │ ├── services/
│ │ │ ├── book_downloaderli.py
│ │ │ ├── book_downloaderis.py
│ │ │ ├── audio_recognition.py
│ │ │ └── ...
│ │ └── __init__.py
│ ├── domain/
│ │ ├── entities/
│ │ │ ├── download_status.py
│ │ │ └── book.py
│ │ ├── repositories/
│ │ └── __init__.py
│ ├── infrastructure/
│ │ ├── repositories/
| | ├── ml/
│ │ └── __init__.py
│ └── presentation/
│ ├── views/
│ │ ├── main_view.py
│ │ └── ...
│ |── __init__.py
| ├── main.py
├── requirements.txt
├── .gitignore
└── README.md
- Python 3.8+
- Chrome or Firefox browser installed
- Internet connection
-
Clone the repository:
git clone https://github.com/cenixeriadev/Revistook_App.git cd Revistook_App
-
Create a virtual environment and activate it:
python -m venv venv # On Windows venv\Scripts\activate # On macOS/Linux source venv/bin/activate
-
Install dependencies:
pip install -r requirements.txt
- Flet - Flutter-powered UI toolkit for Python
- Selenium - Web automation
- SpeechRecognition - Library for performing speech recognition
- Open CV - Library for filter by image
-
Run the application:
python -m src.presentation.main
-
The main interface allows you to:
- Type book titles, authors, or ISBN numbers directly
- Use the "Filter by image" button to filter results by image
- Use the "Select Audio" button to transcribe spoken book requests
- Select your preferred download directory
Note
it's better to search using the ISBN code.
-
Search results will show book covers, titles, and authors
-
Click "Download" on any book to begin the download process
-
Monitor download progress through the progress bar
The application automatically creates directories for storing temporary files:
- Images:
~/Pictures/BookDownloader/
(Windows/Linux/Mac) - Audio:
~/Music/BookDownloader/
(Windows/Linux/Mac) - Downloads: Default is
~/Downloads/
but can be changed in the UI
- WebDriver issues: Ensure you have the latest version of Chrome or Firefox installed
- OCR not working: Verify that Tesseract OCR is properly installed and accessible in your PATH
- Download failures: Check your internet connection and verify that the book is available
Check the application's console output for detailed error messages.
Contributions are welcome! Please feel free to submit a Pull Request.
This project is licensed under the MIT License - see the LICENSE file for details.
- Library Genesis for providing access to educational resources
- The Flet team for their excellent UI framework
- Open CV project for filter by image