Security News
Research
Data Theft Repackaged: A Case Study in Malicious Wrapper Packages on npm
The Socket Research Team breaks down a malicious wrapper package that uses obfuscation to harvest credentials and exfiltrate sensitive data.
nonebot-plugin-multincm
Advanced tools
一个网易云多选点歌插件(也可以设置成单选,看下面),可以翻页,可以登录网易云账号点 vip 歌曲听(插件发送的是自定义音乐卡片),没了
插件获取的是音乐播放链接,不会消耗会员每月下载次数
以下提到的方法 任选其一 即可
nb plugin install nonebot-plugin-multincm
pip install nonebot-plugin-multincm
pdm add nonebot-plugin-multincm
poetry add nonebot-plugin-multincm
conda install nonebot-plugin-multincm
打开 nonebot2 项目根目录下的 pyproject.toml
文件, 在 [tool.nonebot]
部分的 plugins
项里追加写入
[tool.nonebot]
plugins = [
# ...
"nonebot_plugin_multincm"
]
如果你安装了 nonebot-plugin-ncm 或者其他使用到 pyncm 的插件并且全局 Session 已登录,本插件会与它们共用全局 Session,就可以不用填下面的账号密码了
下面配置中,手机号登录 和 邮箱登录、明文密码 和 MD5 密码哈希 各选其一填写即可
在 nonebot2 项目的 .env
文件中添加下表中的必填配置
配置项 | 必填 | 默认值 | 说明 |
---|---|---|---|
登录相关 | |||
NCM_CTCODE | 否 | 86 | 手机号登录用,登录手机区号 |
NCM_PHONE | 否 | 无 | 手机号登录用,登录手机号 |
NCM_EMAIL | 否 | 无 | 邮箱登录用,登录邮箱 |
NCM_PASSWORD | 否 | 无 | 帐号明文密码,邮箱登录时为邮箱密码 |
NCM_PASSWORD_HASH | 否 | 无 | 帐号密码 MD5 哈希,邮箱登录时为邮箱密码 |
UI 相关 | |||
NCM_LIST_LIMIT | 否 | 20 | 歌曲列表每页的最大数量 |
NCM_LIST_FONT | 否 | 无 | 渲染歌曲列表使用的字体 |
NCM_LRC_EMPTY_LINE | 否 | - | 填充歌词空行的字符 |
行为相关 | |||
NCM_AUTO_RESOLVE | 否 | False | 当用户发送音乐链接时,是否自动解析并发送音乐卡片 |
NCM_RESOLVE_COOL_DOWN | 否 | 30 | 自动解析同一链接的冷却时间(单位秒) |
NCM_RESOLVE_PLAYABLE_CARD | 否 | False | 开启自动解析时,是否解析可播放的卡片 |
NCM_ILLEGAL_CMD_FINISH | 否 | False | 当用户在点歌时输入了非法指令,是否直接退出点歌 |
NCM_ILLEGAL_CMD_LIMIT | 否 | 3 | 当未启用 NCM_ILLEGAL_CMD_FINISH 时,用户在点歌时输入了多少次非法指令后直接退出点歌,填 0 以禁用此功能 |
NCM_DELETE_MSG | 否 | True | 是否在退出点歌模式后自动撤回歌曲列表与操作提示信息 |
NCM_DELETE_MSG_DELAY | 否 | [0.5, 2.0] | 自动撤回消息间隔时间(单位秒) |
NCM_SEND_MEDIA | 否 | True | 是否发送歌曲,如关闭将始终提示使用命令获取播放链接 |
NCM_SEND_AS_CARD | 否 | True | 在支持的平台下,发送歌曲卡片(目前支持 OneBot V11 与 Kritor ) |
NCM_SEND_AS_FILE | 否 | False | 当无法发送卡片或卡片发送失败时,会回退到使用语音发送,启用此配置项将会换成回退到发送歌曲文件 |
其他配置 | |||
NCM_MSG_CACHE_TIME | 否 | 43200 | 缓存 用户最近一次操作 的时长(秒) |
NCM_MSG_CACHE_SIZE | 否 | 1024 | 缓存所有 用户最近一次操作 的总计数量 |
NCM_RESOLVE_COOL_DOWN_CACHE_SIZE | 否 | 1024 | 缓存 歌曲解析的冷却时间 的总计数量 |
NCM_CARD_SIGN_URL | 否 | None | 音卡签名地址(与 LLOneBot 或 NapCat 共用),填写此 URL 后将会把音卡的签名工作交给本插件 |
NCM_CARD_SIGN_TIMEOUT | 否 | 5 | 请求音卡签名地址的超时时间 |
NCM_OB_V11_LOCAL_MODE | 否 | False | 在 OneBot V11 适配器下,是否下载歌曲后使用本地文件路径上传歌曲 |
NCM_FFMPEG_EXECUTABLE | 否 | ffmpeg | FFmpeg 可执行文件路径,已经加进环境变量可以不用配置,在 OneBot V11 适配器下发送语音需要使用 |
网易云
、wyy
、网易点歌
、wydg
、wysong
wysy
、wyprog
wydt
、wydj
wygd
、wypli
wyzj
、wyal
resolve
、parse
、get
direct
upload
lrc
、lyric
、lyrics
NCM_AUTO_RESOLVE
时,Bot 会自动解析你发送的网易云歌曲或电台节目链接A: 可以,把配置项 NCM_LIST_LIMIT
设置为 1
即可。因为插件在检测到搜索结果仅有一个时,会将它直接发送出来。我们在这里利用了这个特性。
QQ:3076823485
Telegram:@lgc2333
吹水群:1105946125
邮箱:lgc2333@126.com
项目使用的网易云 API 调用库
项目一些相关 API 来源
感谢大家的赞助!你们的赞助将是我继续创作的动力!
项目重构
NCM_RESOLVE_COOL_DOWN
、NCM_RESOLVE_COOL_DOWN_CACHE_SIZE
NCM_SEND_MEDIA
、NCM_SEND_AS_CARD
、NCM_SEND_AS_FILE
NCM_CARD_SIGN_URL
、NCM_CARD_SIGN_TIMEOUT
NCM_FFMPEG_EXECUTABLE
NCM_DOWNLOAD_LOCALLY
-> NCM_OB_V11_LOCAL_MODE
NCM_MAX_NAME_LEN
、NCM_MAX_ARTIST_LEN
、NCM_USE_PLAYWRIGHT
playwright
进行图片渲染NCM_ILLEGAL_CMD_LIMIT
163cn.tv
短链(Thanks to @XieXiLin2)NCM_RESOLVE_PLAYABLE_CARD
为 False
时,Bot 依然会回复的问题链接
指令,新增 直链
、上传
指令链接
指令,同时删除了发送过音乐卡片的缓存机制NCM_RESOLVE_PLAYABLE_CARD
、NCM_UPLOAD_FOLDER_NAME
htmlrender
成为真正的可选依赖NCM_MSG_CACHE_TIME
的默认值改为 43200
(12 小时)NCM_DELETE_LIST_MSG
和 NCM_DELETE_LIST_MSG_DELAY
(#5)nonebot-plugin-htmlrender
(playwright
) 渲染歌曲列表与歌词图片(默认不启用,如要启用需要自行安装 nonebot-plugin-multincm[playwright]
)NCM_USE_PLAYWRIGHT
与 NCM_LRC_EMPTY_LINE
NCM_ILLEGAL_CMD_FINISH
NCM_ILLEGAL_CMD_FINISH
时输入错误指令将会提示用户退出点歌NCM_MSG_CACHE_TIME
、NCM_AUTO_RESOLVE
driver.on_startup
中解析
、歌词
、链接
指令可以直接根据 Bot 发送的上个音乐卡片作出回应了KeyError
解析
、歌词
、链接
FAQs
NCM Song Searcher
We found that nonebot-plugin-multincm demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
Research
The Socket Research Team breaks down a malicious wrapper package that uses obfuscation to harvest credentials and exfiltrate sensitive data.
Research
Security News
Attackers used a malicious npm package typosquatting a popular ESLint plugin to steal sensitive data, execute commands, and exploit developer systems.
Security News
The Ultralytics' PyPI Package was compromised four times in one weekend through GitHub Actions cache poisoning and failure to rotate previously compromised API tokens.