mos9527 / pyncmd

网易云音乐 PyNCM Vercel API / 前端

Home Page:https://mos9527.github.io/pyncmd/

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

PyNCMd - Vercel 云函数

Screencap

API 服务设置

初始化

  • Fork 此项目
  • 在 Vercel 导入项目

配置网易云账号

  • 进入 [Vercel 提供的域名]/api/pyncm?module=identity&phone=[你的手机号]&pwd=[你的明文密码]
  • (可选)使用不同国家代码可加入参数 ...&ctcode=[国家代码]
  • 响应报文应形式如下 {"code": 200, "message": "14802a8dcecd7b925b20a546d635e059d28...,复制 message 的值
  • 在 Vercel 项目配置新建环境变量 PYNCMD_SESSION, 填入该值
  • 回到你的实例页面,在Deployments选择最新实例,进行Redeploy
  • 重新进入第一步的 URL 将会有以下输出: 503 Non-empty session

至此 API 配置介绍部分完毕。通过 [Vercel 提供的域名] 即可访问你的 pyncmd 实例

API 使用指南

作为 pyncm 的 SCF 前端,本 API 采用相似的语法

使用例

网页端 - 获取歌曲音频文件 - pyncm.apis.track.GetTrackAudio(song_ids, bitrate)

PC 端- 获取歌曲音频详情(文件URL、MD5…)
Parameters

  song_ids (list) – 歌曲 ID

  bitrate (int*, *optional) – 比特率 (96k SQ 320k HQ 320k+ Lossless/SQ). Defaults to 320000  

请求 URL 即 [...]?modlue=track&method=GetTrackAudio&song_ids=[歌曲 ID]&bitrate=[Bitrate]

其他参数

withIP

该参数可指定汇报网易云音乐服务器的客户端 IP,可解决某些情况下歌曲无法播放的问题

  • ...&withIP=client 使用向 PyNCMd 发起请求者的 IP
  • ...&withIP=server 使用 Vercel 的服务器 IP
  • ...&withIP=1.1.1.1 自定义 IP

返回值

  • 网易云侧正常,请求报文即网易云侧响应内容
  • pyncmd 或其依赖异常,特殊响应码的错误汇报将成为响应内容

错误信息 FAQ

  • HTTP 503 Session environ \"session\" non-empty 配置新账号时,旧账号的PYNCMD_SESSION应被清空
  • ...

附 - Vercel Pricing

as of 062422

About

网易云音乐 PyNCM Vercel API / 前端

https://mos9527.github.io/pyncmd/

License:Apache License 2.0


Languages

Language:HTML 44.9%Language:JavaScript 38.1%Language:Python 17.0%