Welcome to the Media Downloader for Kemono.su! This Python script allows you to fetch and download media files from various content platforms supported by the Kemono.su API. The script can handle multiple platforms and perform concurrent downloads to ensure efficiency.
- Fetch Artist Data: Retrieves data from various platforms (Patreon, Fanbox, Pixiv, Discord, Fantia, Afdian, Boosty, Gumroad, Subscribestar) using the Kemono.su API.
- Concurrent Downloads: Downloads media files concurrently using multiple threads to speed up the process.
- Progress Tracking: Displays download progress for each file.
- Platform Support: Handles multiple platforms with their respective API endpoints.
- Fanbox
- Patreon
- Pixiv
- Discord
- Fantia
- Afdian
- Boosty
- Gumroad
- Subscribestar
Ensure you have Python installed on your system. The script requires the following libraries:
requests
: For making HTTP requests.tqdm
: For displaying download progress.concurrent.futures
: For handling concurrent downloads.
You can install the required libraries using pip:
pip install requests tqdm
-
Clone the Repository:
git clone https://github.com/V1SIONUSE/Kemono.su-Downloader.git cd yourrepository
-
Install Dependencies: Install the necessary Python libraries if you haven't already:
pip install requests tqdm
Run the script using Python:
python media_downloader.py
You will be prompted with the following steps:
-
Enter Artist Page URL:
- Provide the URL of the artist's page from a supported platform. Example URLs:
https://kemono.su/patreon/user/2430075
https://kemono.su/fanbox/user/23216574
- Provide the URL of the artist's page from a supported platform. Example URLs:
-
Enter Download Directory:
- Specify the directory where you want to save the downloaded files.
The script will fetch the media files and download them to the specified directory.
Enter the artist page URL: https://kemono.su/patreon/user/2430075
Enter the directory where you want to download the files: ./downloads
The script will then proceed to download the media files concurrently and display progress for each file.
- File Size Detection: The script uses HTTP headers to determine the file size for progress tracking.
- Thumbnails and Zip Files: Thumbnails and zip files are skipped during the download process.
- Error Handling: If an error occurs during fetching or downloading, appropriate messages are displayed.
- Unsupported Platform: Ensure that the provided URL corresponds to a supported platform.
- Download Issues: Verify that the download directory is writable and has sufficient space.
Feel free to fork this repository and submit pull requests. For major changes or feature requests, please open an issue to discuss.