AI软件

bilibili-music-list-exporter

导出哔哩哔哩收藏夹里面的歌曲列表,最后还能直接导入到网易云

项目结构

  • 这是一个 Python 命令行工具项目
  • 你可以把它理解成:
    • src/ 里放真正的程序代码
    • tests/ 里放测试
    • README.md 是说明书
    • pyproject.toml 是这个项目的“安装配置和入口清单”

【几个关键文件】

  • 代码主目录:E:\software\Code\Java\vibe coding\bilibili-music-list-exporter\src\bili_music_list
  • 命令行入口:E:\software\Code\Java\vibe coding\bilibili-music-list-exporter\src\bili_music_list\cli.py:16
  • 项目安装配置:E:\software\Code\Java\vibe coding\bilibili-music-list-exporter\pyproject.toml:1

pip install -e . 到底在做什么
这一步不是“下载一个软件来运行”,而是:

  • 你当前这个项目 安装到本机 Python 环境里
  • 让 Python 知道:
    • 这个包叫 bili_music_list
    • 它的源码在 src/bili_music_list
    • 它还要注册一个命令叫 bili-music-list

你可以把它理解成:

  • “把当前文件夹里的项目,注册成一个可执行工具”

这里的:

  • pip = Python 的安装器
  • install = 安装
  • -e = editable,可编辑安装
  • . = 当前目录这个项目

为什么要 -e
因为这是你自己本地开发的项目。
用了 -e 以后:

  • 代码改了,不用每次重新安装
  • 命令会直接指向你当前目录里的源码

这对开发阶段很方便。

它具体根据什么来安装
根据这个文件:

  • E:\software\Code\Java\vibe coding\bilibili-music-list-exporter\pyproject.toml:1

这里面定义了两件非常关键的事:

  • 包名:bili-music-list
  • 命令入口:bili-music-list = "bili_music_list.cli:main"

这句话的意思是:

  • 当你在终端输入 bili-music-list
  • 实际上执行的是
  • bili_music_list/cli.py 里的 main() 函数

所以你后续敲的命令到底在执行什么
比如你输入:

  • bili-music-list --media-id 203493811 --parser heuristic --output output/music_list.csv

本质上等价于:

  • 启动 Python
  • 加载 bili_music_list.cli
  • 执行里面的 main()
  • main() 再解析这些命令行参数
  • 然后去抓 B 站收藏夹、解析歌曲、输出 CSV

为什么你刚才会报错
你报的是:

  • ModuleNotFoundError: No module named 'bili_music_list'

这说明:

  • 系统里已经有一个叫 bili-music-list 的启动脚本了
  • 但它启动时找不到这个项目对应的 Python 包

通常意味着:

  • 这个项目还没正确安装到当前 Python 环境
  • 或者以前装过,但环境变了
  • 或者这个命令指向了旧环境

这就是为什么第一步要先安装
所以第一步不是业务操作,而是先让环境认识这个项目:

  • py -m pip install -e .

这一步执行后,相当于告诉你的 Python:

  • “以后 bili-music-list 这个命令,就从当前项目里找代码来跑”

推荐你怎么理解整个使用链路
可以分成两层:

  • 第一层:环境层
    • 安装项目
    • 确认命令能跑
  • 第二层:业务层
    • 导出 B 站歌曲列表
    • 登录网易云
    • 导入网易云歌单

【你的完整流程其实应该是】

  • 1. 安装当前项目
  • 2. 运行 bili-music-list 导出 CSV
  • 3. 生成网易云二维码
  • 4. 扫码后导出网易云 cookie
  • 5. 把 CSV 导入网易云歌单

【你现在最该做的第一步】
先在项目根目录运行:

  • py -m pip install -e .

然后验证:

  • py -c "import bili_music_list; print('ok')"

如果这一步通过了,说明项目安装好了,后面的命令才有意义。

【一句话总结】

  • pip install -e . 安装的是“你当前这个项目”
  • bili-music-list ... 执行的是这个项目里 cli.pymain() 函数
  • 你现在卡住的是“项目还没被当前 Python 环境正确识别”

如果你愿意,我下一步可以直接给你画一张 “从 pyproject.tomlbili-music-list 命令执行”的小流程图,你会一下就懂。

运行流程

你在终端输入
bili-music-list –media-id …

    │
    ▼

系统找到这个命令入口
bili-music-list.exe

    │
    ▼

这个入口是安装时注册的
来源:pyproject.toml

    │
    ▼

pyproject.toml 里写着
bili-music-list = bili_music_list.cli:main

    │
    ▼

Python 去加载源码
src/bili_music_list/cli.py

    │
    ▼

执行里面的
main()

    │
    ▼

main() 再根据参数决定做什么

  • 导出 B站歌曲列表
  • 生成网易云二维码
  • 检查网易云登录
  • 导入网易云歌单

运行执行


AI软件
http://www.981928.xyz/2026/04/02/AI软件/
作者
981928
发布于
2026年4月2日
许可协议