Skip to main content

Download Bilibili videos as audios.

Project description

BiliFM Logo

BiliFM

PyPI PyPI - Python Version PyPI - License PDM-managed GitCode-managed
📻 Best BiliBili Audio Downloader

👋 Intro

An script to download all audios of the Bilibili uploader you love.
轻松下载指定up主全部或指定的视频音频。

📦 Install

pip install BiliFM --upgrade

或在本地使用并安装依赖

pip install -r requirements.txt

🔨 Usage

使用实例:

uid 模式

bilifm uid 261485584
uid = "261485584" # uid 为 UP 主的 uid

bv 模式

Note
bv 模式现已支持多 P 下载,使用方式和普通 bv 模式相同
同理,其他模式的下载也支持分 P 视频

bilifm bv BV1k341187
bvid = "BV1k341187" # bvid 是要下载的音频的视频 bv 号

fav 模式

bilifm fav 69361944 cookies.json
media_id = "69361954" # media_id 是收藏夹的 media_id,注意不要和 uid/fid 弄混
cookies_path = "cookies.json" # cookies 是保存 cookies 的文件路径,注意需要转换为 json

media_id 的获取:

media_id

cookies 的获取:

season 模式

下载视频合集

bilifm season $uid $sid [OPTIONS]
  • uid, sid 的获取: 打开视频合集网页, 从 URL 中获取

https://space.bilibili.com/23263470/channel/collectiondetail?sid=1855309

例如上面链接, uid 为 23263470, sid 为 1855309 (目前 uid 可以随意填写)

bilifm season 23263470 1855309
  • Options:
    • -o, --directory 选择音频保存地址

series 模式

下载视频列表

bilifm series $uid $sid [OPTIONS]
  • uid, sid 的获取: 打开用户空间中的合集和列表, 找到列表点击更多, 然后从URL中获取

https://space.bilibili.com/488978908/channel/seriesdetail?sid=888434

例如上面链接, uid 为 488978908, sid 为 888434. 使用下面命令

bilifm series 488978908 888434
  • Options:
    • -o, --directory 选择音频保存地址

📅 Features

  • python 版本限制未知

    • 在函数定义时使用了类型注解,故不建议使用 3.5 以下版本
  • 接口简洁方便调用

@app.command()
def bv(bv: str):
    audio = Audio(bv)
    audio.download()


@app.command()
def uid(uid: str):
    user = User(uid)

    for video in user.videos:
        bv = video["bvid"]
        audio = Audio(bv)
        audio.download()

    typer.echo("Download complete")

⚠️ Issues

  • 获取 UP 主视频列表时会出现 UnicodeDecodeError,原因未知
    • 初步判断是网络不稳定所致,在稳定的网络环境下没有出现此问题
    • 暂时采用 try-except 跳过这一过程
  • 在使用前需关闭代理

🔖 Licence

  • bilibiliaudioDownloader 的作者没有选取许可证,暂时选择 MIT License
  • bilibiliAudioDownloader 的作者已添加 GPL-3.0 License,故本项目亦修改为 GPL-3.0

🙏 Thanks

感谢以下产品对 BiliFM 的赞助:

JetBrains Logo

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

bilifm-0.2.5.tar.gz (25.2 kB view details)

Uploaded Source

Built Distribution

bilifm-0.2.5-py3-none-any.whl (27.0 kB view details)

Uploaded Python 3

File details

Details for the file bilifm-0.2.5.tar.gz.

File metadata

  • Download URL: bilifm-0.2.5.tar.gz
  • Upload date:
  • Size: 25.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: pdm/2.19.3 CPython/3.10.12 Linux/6.5.0-1025-azure

File hashes

Hashes for bilifm-0.2.5.tar.gz
Algorithm Hash digest
SHA256 e2b469b02ae9eb3fe2ceb70629b8cff4bbed08ac8ff5dbbe58c0f91f88bb287f
MD5 318207c465bea92058688103157f5475
BLAKE2b-256 5dfde28edf115495ddb9db0dfdacf43e9fb11a80a32a97e12f359012cca63f7f

See more details on using hashes here.

File details

Details for the file bilifm-0.2.5-py3-none-any.whl.

File metadata

  • Download URL: bilifm-0.2.5-py3-none-any.whl
  • Upload date:
  • Size: 27.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: pdm/2.19.3 CPython/3.10.12 Linux/6.5.0-1025-azure

File hashes

Hashes for bilifm-0.2.5-py3-none-any.whl
Algorithm Hash digest
SHA256 dbd0893188255bad8abf794f7851afd881bf300593e3cac71cc71b4c164e01c2
MD5 cd853b60a4f34925b43c4457bf67fdbb
BLAKE2b-256 058ed7275471c2eda298d540d8af77f10aed4d829b51706340e8ee5e9b6baf4d

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page