mirror of
https://github.com/saveweb/biliarchiver.git
synced 2024-09-19 11:05:28 -07:00
Use bilix to download BiliBili video and upload to the Internet Archive with metadata and danmaku.
.github/workflows | ||
.vscode | ||
biliarchiver | ||
.gitignore | ||
bilibili-archive-checker.user.js | ||
build.py | ||
poetry.lock | ||
pyproject.toml | ||
README.md | ||
requirements.txt |
biliarchiver
Archiving tool for Bilibili based on bilix
Install
pip install biliarchiver
Usage
biliarchiver --help
Follow these steps to start archiving:
- Initialize a new workspace in current working directory:
biliarchiver init
- Provide cookies and tokens following instructions:
biliarchiver auth
- Download videos from BiliBili:
biliarchiver down --bvids BVXXXXXXXXX
- This command also accepts a list of BVIDs or path to a file. Details can be found in
biliarchiver down --help
.
- Upload videos to Internet Archive:
biliarchiver up --bvids BVXXXXXXXXX
- This command also accepts a list of BVIDs or path to a file. Details can be found in
biliarchiver up --help
.
Develop
Install
Please use poetry to install dependencies:
poetry install
Build English locale if necessary. Refer to the last section for details.
Run
poetry run biliarchiver --help
Lint
poetry run ruff check .
i18n
To generate and build locales, you need a GNU gettext compatible toolchain. You can install mingw
and use sh
to enter a bash shell on Windows.
Generate biliarchiver.pot
:
find biliarchiver/ -name '*.py' | xargs xgettext -d base -o biliarchiver/locales/biliarchiver.pot
Add a new language:
msginit -i biliarchiver/locales/biliarchiver.pot -o en.po -l en
Update a language:
pnpx gpt-po sync --po biliarchiver/locales/en/LC_MESSAGES/biliarchiver.po --pot biliarchiver/locales/biliarchiver.pot
(Important) Build a language:
msgfmt biliarchiver/locales/en/LC_MESSAGES/biliarchiver.po -o biliarchiver/locales/en/LC_MESSAGES/biliarchiver.mo