Genshin gacha history analysis plugin for NoneBot2
Project description
NoneBot Plugin GachaLogs
🤖 用于分析与管理原神祈愿记录的 NoneBot2 插件
安装方法
如果你正在使用 2.0.0.beta1 以上版本 NoneBot2,推荐使用以下命令安装:
# 从 nb_cli 安装
nb plugin install nonebot-plugin-gachalogs
# 或从 PyPI 安装
pip install nonebot-plugin-gachalogs
使用须知
-
初次使用
抽卡记录
命令时,要求输入祈愿历史记录链接或米哈游通行证 Cookie。如果初次使用输入链接(只要回复的内容中含有即可,不必手动截取准确的链接),在该链接的 AuthKey 过期(24 小时)后需要重新输入链接或 Cookie 才能刷新数据。如果初次使用输入 Cookie,只要 Cookie 有效,后续使用时祈愿历史记录链接将自动更新,无需再次输入。 -
插件使用米哈游通行证 Cookie 来自动更新祈愿历史记录链接,该 Cookie 可在 米哈游通行证 登陆获取,并非一些教程中使用的 米游社 BBS Cookie,其中需要包含
stoken
stuid
或login_ticket
。你可以参考 KimigaiiWuyi/GenshinUID#255 等教程获取米哈游通行证 Cookie。此处提供一种获取该 Cookie 的简便方法:
- 在桌面端浏览器新建 隐身标签页,后面均在此隐身标签页内操作
- 进入 https://www.miyoushe.com/ys/ 并正常登录
- 进入 http://user.mihoyo.com/ 并正常登录
- 按下 F12 键,切换至「Console / 控制台」页面,在输入处(通常由蓝色「>」符号示意)输入
document.cookie
回车,控制台中出现的字符串即为插件需要的 Cookie
-
一般来说,插件安装完成后无需设置环境变量,只需重启 Bot 即可开始使用。你也可以在 NoneBot2 当前使用的
.env
文件中参考 .env.example 添加下表给出的环境变量,对插件进行更多配置。环境变量修改后需要重启 Bot 才能生效。环境变量 必需 默认 说明 gachalogs_safe_group
否 []
安全群组,只有在安全群组内才允许输入链接、Cookie 等内容 gacha_expire_sec
否 3600
祈愿历史记录本地缓存过期秒数 resources_dir
否 /path/to/bot/data/
插件缓存目录的父文件夹,包含 gachalogs
文件夹的上级文件夹路径gachalogs_font
否 /path/to/bot/data/gachalogs/LXGW-Bold.ttf
祈愿历史记录绘制字体 gachalogs_pie_font
否 /path/to/bot/data/gachalogs/LXGW-Bold-minipie.ttf
祈愿历史记录绘制饼图字体 gachalogs_achieve_font
否 /path/to/bot/data/gachalogs/HYWH-85W.ttf
祈愿历史记录绘制成就字体 -
在群组中发送米哈游通行证 Cookie 等内容存在安全隐患,因此即使某些命令在群组中触发,处理结果最终也会通过私聊发送。如果用户未添加 Bot 为好友,私聊消息将发送失败。添加安全群组环境变量,即可允许在这些群组中直接发送敏感消息,如果大家不在意的话。
-
commit
e2f38f3
之后插件私聊文件发送功能不再依赖腾讯云 COS 转存,只需 go-cqhttp 支持 上传私聊文件 接口。因此如果有私聊文件发送需求,务必保证 go-cqhttp 版本不低于 v1.0.0-rc3。 -
使用
抽卡记录导出
命令生成的表格与 JSON 文件均符合 统一可交换祈愿记录标准(UIGF)格式,你可以尝试在其他支持此标准的工具中导入。导出的祈愿历史记录链接、米哈游通行证 Cookie 在某些地方也许有用。 -
插件运行后,用户的基本配置信息会写入
config.json
文件,祈愿历史记录数据缓存于gachalogs-{uid}.json
文件。
命令说明
-
抽卡记录
/ckjl
返回一张祈愿历史记录统计图,样式与 https://genshin.voderl.cn/ 一致。
可选附带参数 默认 说明 刷新
/-f
/--force
空 要求强制刷新最新祈愿历史记录,即使本地缓存未过期(结果默认缓存 1 小时) 祈愿历史记录链接 空 指定祈愿历史记录链接(仅初次使用、无法自动更新祈愿历史记录链接时生效) 米哈游通行证 Cookie 空 指定米哈游通行证 Cookie(仅初次使用、无法自动更新祈愿历史记录链接时生效) -
抽卡成就
/ckcj
返回一张祈愿历史记录成就图,样式与 https://genshin.voderl.cn/ 一致。
-
抽卡记录导入(在私聊或群聊中上传抽卡记录文件)
返回导入结果及一张祈愿历史记录统计图。
普通用户只允许导入与本地记录(如果有)归属 UID 相同的抽卡记录。超级用户在普通用户规则基础上,还允许为拥有本地记录的其他用户导入 UID 相同的抽卡记录。
目前支持导入的文件格式有:
- 程序内部缓存格式。导入后执行恢复,即将本地记录直接替换为该文件的记录
- UIGF v2.2 格式,并且每条记录必须拥有
time
rank_type
等 UIGF v2.2 标准中定义为非必需的字段。导入后执行合并,即尝试将本地记录与该文件的记录合并
如果导入前 被导入者 有本地记录,插件会创建一个本地记录备份文件用于意外恢复,并尝试通过私聊将此文件发送给 被导入者(如果发送成功则 Bot 在服务器上创建的备份文件会被删除)。一旦发现插件导入后记录异常,被导入者 可以直接发送此文件给 Bot 来触发记录恢复。
-
抽卡记录导出
/logexp
/ckjldc
导出祈愿历史记录表格,通过可选附带参数指定导出祈愿历史记录 JSON 文件、祈愿历史记录链接或米哈游通行证 Cookie。
可选附带参数 默认 说明 @某人 @自己 指定导出记录用户,仅 Bot 管理员 可导出其他用户的记录 统一
/标准
/uigf
/json
空 指定导出祈愿历史记录为 JSON 文件 链接
/地址
/url
空 指定导出祈愿历史记录链接 饼干
/ck
/cookie
空 指定导出米哈游通行证 Cookie -
抽卡记录删除
/logdel
/ckjldc
默认只删除本地祈愿历史记录缓存(不会影响 Cookie 等配置数据),即只删除
gachalogs-{uid}.json
文件。如果需要连同指定用户在
config.json
文件中的配置一起删除,请使用附带参数全部
等。记录、配置一旦删除将无法恢复,所以只有输入中附带了
确认
等附带参数时,命令才会真正对本地文件执行删除动作。可选附带参数 默认 说明 @某人 @自己 指定删除记录或配置的用户,仅 Bot 管理员 可删除其他用户的记录或配置 强制
/确认
/force
/-f
/-y
空 删除操作确认 全部
/所有
/配置
/all
/-a
/config
/-c
空 指定删除用户的 配置和记录 全部数据
特别鸣谢
@nonebot/nonebot2 | @Mrs4s/go-cqhttp | @sunfkny/genshin-gacha-export | @voderl/genshin-gacha-analyzer | @vikiboss/genshin-helper | @DGP-Studio/Snap.Metadata
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file nonebot_plugin_gachalogs-0.2.13.tar.gz
.
File metadata
- Download URL: nonebot_plugin_gachalogs-0.2.13.tar.gz
- Upload date:
- Size: 40.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.1 CPython/3.11.4
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 4c57b2f67cfd3113f332742ad55eb1d65bcbfde334b0f4a608d8cb1747d83636 |
|
MD5 | 2fd327f64bc70aa5dad0723632f724be |
|
BLAKE2b-256 | 400f442721b8cad6973f5be9448c6d8fe5793efa8fac6079e9fb686c3bd73b1e |
File details
Details for the file nonebot_plugin_gachalogs-0.2.13-py3-none-any.whl
.
File metadata
- Download URL: nonebot_plugin_gachalogs-0.2.13-py3-none-any.whl
- Upload date:
- Size: 40.8 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.1 CPython/3.11.4
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 4974a2d11a3a3cef37823b491336369889ea7bbf26b73061ee839d994271bd80 |
|
MD5 | 489f8b602e87b1245785131fd97ed176 |
|
BLAKE2b-256 | fd98817305b26ed9bfa5732022a67a562dd82924b465e556e2137120a3406d51 |