Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/lysagxra/animeworlddownloader
Efficient downloader for AnimeWorld
https://github.com/lysagxra/animeworlddownloader
anime anime-downloader bulk bulk-downloader concurrent-processing downloader parallel-processing python python3
Last synced: 5 days ago
JSON representation
Efficient downloader for AnimeWorld
- Host: GitHub
- URL: https://github.com/lysagxra/animeworlddownloader
- Owner: Lysagxra
- License: gpl-3.0
- Created: 2024-11-04T17:03:29.000Z (about 2 months ago)
- Default Branch: main
- Last Pushed: 2024-12-15T10:38:06.000Z (12 days ago)
- Last Synced: 2024-12-15T11:27:44.167Z (12 days ago)
- Topics: anime, anime-downloader, bulk, bulk-downloader, concurrent-processing, downloader, parallel-processing, python, python3
- Language: Python
- Homepage:
- Size: 88.9 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# AnimeWorld Downloader
> A Python-based tool for downloading anime series from AnimeWorld, featuring progress tracking for each episode. It efficiently extracts video URLs and manages downloads.
![Screenshot](https://github.com/Lysagxra/AnimeWorldDownloader/blob/48ebac6e425e3ca7bf89929b40a79d6f362f02c0/misc/Screenshot.png)
## Features
- Downloads multiple episodes concurrently.
- Supports batch downloading via a list of URLs.
- Supports downloading a specified range of episodes.
- Tracks download progress with a progress bar.
- Automatically creates a directory structure for organized storage.## Directory Structure
```
project-root/
├── helpers/
│ ├── anime_utils.py # Utilities for extracting information from AnimeWorld.
│ ├── download_utils.py # Utilities for managing the download process
│ ├── file_utils.py # Utilities for managing file operations
│ ├── general_utils.py # Miscellaneous utility functions
│ └── progress_utils.py # Tools for progress tracking and reporting
├── anime_downloader.py # Module for downloading anime episodes
├── main.py # Main script to run the downloader
└── URLs.txt # Text file containing anime URLs
```## Dependencies
- Python 3
- `requests` - for HTTP requests
- `BeautifulSoup` (bs4) - for HTML parsing
- `rich` - for progress display in terminal## Installation
1. Clone the repository:
```bash
git clone https://github.com/Lysagxra/AnimeWorldDownloader.git
```2. Navigate to the project directory:
```bash
cd AnimeWorldDownloader
```3. Install the required dependencies:
```bash
pip install -r requirements.txt
```## Single Anime Download
To download a single anime, you can use the `anime_downloader.py` script.
### Usage
Run the script followed by the anime URL you want to download:
```bash
python3 anime_downloader.py [--start ] [--end ]
```- ``: The URL of the anime series.
- `--start `: The starting episode number (optional).
- `--end `: The ending episode number (optional).### Examples
To download all episodes:
```bash
python3 anime_downloader.py https://www.animeworld.so/play/made-in-abyss.pIzmnA/TNBNCF
```To download a specific range of episodes (e.g., episodes 5 to 10):
```bash
python3 anime_downloader.py https://www.animeworld.so/play/made-in-abyss.pIzmnA/TNBNCF --start 5 --end 10
```To download episodes starting from a specific episode:
```bash
python3 anime_downloader.py https://www.animeworld.so/play/made-in-abyss.pIzmnA/TNBNCF --start 5
```
In this case, the script will download all episodes starting from the `--start` episode to the last episode.## Batch Download
### Usage
1. Create a `URLs.txt` file in the project root and list the anime URLs you want to download.
- Example of `URLs.txt`:
```
https://www.animeworld.so/play/made-in-abyss.pIzmnA/TNBNCF
https://www.animeworld.so/play/chainsaw-man.3EoJJ/HhLOwe
https://www.animeworld.so/play/hellsing-ultimate.w1pCF/ryYu5w
```- Ensure that each URL is on its own line without any extra spaces.
- You can add as many URLs as you need, following the same format.2. Run the main script via the command line:
```bash
python3 main.py
```The downloaded files will be saved in the `Downloads` directory.