Skip to content

yt-dlp Wrapper & Extension for BiliBili.tv to assist you in ripping episode

License

Notifications You must be signed in to change notification settings

nattadasu/bilidownloader

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

BiliDownloader

yt-dlp Wrapper & Extension for BiliBili.tv to assist you in ripping episode

Caution

This tool is provided "as is" for educational purposes only.

No warranties, express or implied, are provided regarding its functionality or suitability for any specific purpose.

The distribution or use of any output generated by this tool for public or commercial purposes is strictly prohibited and strongly discouraged.

The creators and maintainers of this tool disclaim any liability for damages or losses resulting from its use.

Requirements

Ensure the following libraries/programs are installed before using this tool:

  • Python 3.11 or later
  • git for cloning the repository
  • pipx (install via pip install pipx)
  • The latest version of FFmpeg, available in your system's PATH
  • MKVToolNix (non-containerized versions only, such as Flatpak or Snap are not supported), with mkvpropedit accessible from the bundle

Additionally, you must obtain your own cookie.txt from BiliIntl, and ensure that Premium is activated.

Installation

Note

Currently, we only support installation via pipx for better package management. If pipx is not installed, you can install it using pip install pipx or check if your distribution's package manager provides it.

pipx install git+https://github.com/nattadasu/bilidownloader.git
# To enable ASS subtitle support, use the following command instead:
# Note: Depending on your device, installation may take anywhere from a few minutes to an hour.
pipx install 'bilidownloader[ass] @ git+https://github.com/nattadasu/bilidownloader.git'
# For Termux users, additional steps may be required:
pkg install x11-repo
pkg install busybox ffmpeg git mkvtoolnix openssl python python-pip which
pip install pipx
pip install --extra-index-url "https://termux-user-repository.github.io/pypi/" pydantic
pipx install --system-site-packages git+https://github.com/nattadasu/bilidownloader.git

Starting from version 2.1.0, dependencies for ASS subtitle support have been made optional to ensure compatibility with headless devices and non-x86 architectures. This change eliminates the need for compiling dependencies but sacrifices ASS track support.

For Termux users, it is not recommended to install the ass extra unless you are confident in managing the additional unwritten requirements and troubleshootings.

Usage

Run bilidownloader from your terminal. The program uses Typer to build its CLI, so all commands and options are automatically well-documented. Use the --help parameter for more details.

Features

  • Download episodes
  • Retrieve the latest schedule
  • Monitor and automatically download episodes for tracked series (watchlist)
  • Manage your Favorite List directly from the terminal

Limitations

  • Cannot bypass premium restrictions: a premium account is required to download paywalled content
  • Does not run in the background: use crontab or a task scheduler to automate periodic execution
  • Cannot download user-uploaded content: the tool is specifically designed for episode URLs
  • Does not support the Mainland version: it is tested only with the International version
  • Does not automatically organize episodes into folders: use tools like FileBot for this purpose

Development and Testing

To test the application, use the following command:

pipx install --suffix "_test" ".[ass]"

This installs the package with the ass extra in a separate environment, allowing you to test without affecting your main installation.

Versioning

BiliDownloader follows Semantic Versioning.

Each release is tagged with a version number in the format vX.Y.Z, where:

  • X represents major versions with breaking changes
  • Y represents minor versions with new features and backward-compatible changes
  • Z represents patch versions with bug fixes or general improvements

Note: Version tags are not applied to the repository itself. Refer to the commit history for detailed information about changes.

License

This repository is licensed under the GNU General Public License, version 3.0 or later (GPL-3.0-or-later).

You may redistribute and/or modify the contents of this repository under the terms of the GPL-3.0-or-later.

A copy of the license is available in the LICENSE file or at https://www.gnu.org/licenses/gpl-3.0.html.

About

yt-dlp Wrapper & Extension for BiliBili.tv to assist you in ripping episode

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 2

  •  
  •  

Languages