简体中文 | English
原仓库:lx-music-api-server
你可以在原仓库中找到对应的可用源脚本
由于使用此项目导致的封号等情况与本项目无关
- 功能
- 完整性API(歌单,搜索)
- 网易云刷新登录
- 服务器向webdav
- 客户端播放服务器上的本地音乐
- Cookie池
- https监听,多端口监听
- 反代兼容性
- 获取更高的音质
- QRC解密
- 本地化支持(目前仅支持简体中文)
- 多端部署(
Windows
Linux
MacOS
)
环境要求: Python 3.8+
-
安装 poetry
pip install poetry
-
clone本项目并进入项目目录
git clone https://github.com/lxmusics/lx-music-api-server-python.git cd lx-music-api-server-python
-
安装依赖
poetry install
-
启动
poetry shell # 进入poetry环境 python main.py # 运行项目
环境要求:Python 3.6 - 3.11, 建议Python 3.8+
Python 3.12 及以上会装不上依赖
没有其他限制,能用 Python 理论上就能跑起来
linux 命令如果为 python3 请自行替换
-
clone本项目并进入项目目录
git clone https://github.com/lxmusics/lx-music-api-server-python.git cd lx-music-api-server-python
-
安装依赖
python -m pip install -r ./requirements.txt
-
启动
python main.py
环境要求:Docker
不知道需要的 Docker 版本,可以自己尝试现有的 Docker 版本是否可以使用
-
更新软件包
sudo apt-get update
-
安装Docker,已有跳过
sudo apt-get install -y docker.io
-
创建容器
docker run --name lx-music-api-server -p 9763:9763 -v /root/lx-music-api-server/config:/app/server/config -v /root/lx-music-api-server/logs:/app/server/logs -v /root/lx-music-api-server/audio:/app/server/audio --restart always -d ikun0014/lx-music-api-docker
-
填写配置
前往/root/lx-music-api-server/config填写 (权限不足可修改创建容器命令)
接口返回值中body.code
字段值中的代码含义
内容 | 含义 |
---|---|
0 | 成功 |
1 | IP 被封禁或不支持反代 |
2 | 获取失败 |
4 | 服务器内部错误(对应 statuscode 500) |
5 | 请求过于频繁 |
6 | 参数错误 |
接口返回的statuscode
对应的代码含义
内容 | 含义 |
---|---|
200 | 成功 |
403 | IP 被封禁 |
400 | 参数错误 |
429 | 请求过于频繁 |
500 | 服务器内部错误(对应 body.code 4) |
-
三角形具有稳定性
for a in xxx: if (xxx): if (xxx): if (xxx): for b in xxx: if (xxx): while (xxx): pass pass pass pass pass pass pass
-
能一行写完那就坚决不多行
sys.stdout.write('\r|'+'=' * (int(dd['pares'].index(ds) / total * 50)) + ' ' * (49 - int(dd['pares'].index(ds) / total * 50)) + f'''|{int(dd['pares'].index(ds) / total * 100)}% xx''' + ds['title']+' ' * 20)
-
不复用重复部分
async def other(method, source, songid, _): try: func = require('modules.' + source + '.' + method) except: return { 'code': 1, 'msg': '未知的源或不支持的方法', 'data': None, } try: result = await func(songid) return { 'code': 0, 'msg': 'success', 'data': result } except FailedException as e: return { 'code': 2, 'msg': e.args[0], 'data': None, } async def other_with_query(method, source, t, _, query): try: func = require('modules.' + source + '.' + method) except: return { 'code': 1, 'msg': '未知的源或不支持的方法', 'data': None, } try: result = await func(t, query) return { 'code': 0, 'msg': 'success', 'data': result } except FailedException as e: return { 'code': 2, 'msg': e.args[0], 'data': None, }
-
模块不拆分
-
不明所以的变量名
a = '小明' b = 1 c = 2 d = b'' def e(a, b, c): c = xxx d = xxx f = e(c, b, a)
本项目基于 MIT 许可证发行,以下协议是对于 MIT 原协议的补充,如有冲突,以以下协议为准。
词语约定:本协议中的“本项目”指本音源项目;“使用者”指签署本协议的使用者;“官方音乐平台”指对本项目内置的包括酷我、酷狗、咪咕等音乐源的官方平台统称;“版权数据”指包括但不限于图像、音频、名字等在内的他人拥有所属版权的数据。
- 本项目的数据来源原理是从各官方音乐平台的公开服务器中拉取数据,经过对数据简单地筛选与合并后进行展示,因此本项目不对数据的准确性负责。
- 使用本项目的过程中可能会产生版权数据,对于这些版权数据,本项目不拥有它们的所有权,为了避免造成侵权,使用者务必在24 小时内清除使用本项目的过程中所产生的版权数据。
- 由于使用本项目产生的包括由于本协议或由于使用或无法使用本项目而引起的任何性质的任何直接、间接、特殊、偶然或结果性损害(包括但不限于因商誉损失、停工、计算机故障或故障引起的损害赔偿,或任何及所有其他商业损害或损失)由使用者负责。
- 本项目完全免费,且开源发布于 GitHub 面向全世界人用作对技术的学习交流,本项目不对项目内的技术可能存在违反当地法律法规的行为作保证,禁止在违反当地法律法规的情况下使用本项目,对于使用者在明知或不知当地法律法规不允许的情况下使用本项目所造成的任何违法违规行为由使用者承担,本项目不承担由此造成的任何直接、间接、特殊、偶然或结果性责任。
若你使用了本项目,将代表你接受以上协议。
音乐平台不易,请尊重版权,支持正版。
本项目仅用于对技术可行性的探索及研究,不接受任何商业(包括但不限于广告等)合作及捐赠。
若对此有疑问请 mail to:
helloplhm-qwq+outlook.com
folltoshe+foxmail.com
(请将+
替换成@
)