基于 Python3 的米游社辅助签到项目
禁止大范围宣传本项目,谢谢配合
请不要发B站,谢谢
也请不要滥用本项目
⚠️ 对于Fork的开发者/用户,请不要滥用GitHub Action,因为 GitHub 将计算您的分支 GitHub Actions 使用量并归属到上游存储库,这可能导致 GitHub 停用此上游存储库
此项目的用途
这是一个米游社的辅助签到项目,包含了以下功能
1.自动获取米游币
2.支持国服:崩坏学院2、崩坏3、未定事件簿、原神、崩坏:星穹铁道、绝区零 的游戏签到
3.支持国际服:崩坏3、未定事件簿、原神、崩坏:星穹铁道、绝区零的游戏签到
部署方法
下载Python3
解压本项目压缩包,在解压目录中Shift+右键 打开你的命令提示符 cmd 或 powershell
requirements.txt 是所需第三方模块,执行 pip install -r requirements.txt
安装模块
打开目录中的config 文件夹复制config.yaml.example
并改名为config.yaml
,脚本的多用户功能靠读取不同的配置文件实现,你可以创建无数个自定义名字.yaml
,脚本会扫描config目录下yaml
为拓展名的文件,并按照名称顺序依次执行。
请使用 vscode/notepad++等文本编辑器打开上一步复制好的配置文件
使用获取 Cookie里面的方法来获取米游社 Cookie
将复制的 Cookie 粘贴到config.yaml
的cookie:" "
中(在account
里面)
例子
cookie: 你复制的cookie
通过获取Stoken 项目获取Stoken,或请参考Hutao文档里的方法获取Stoken (麻烦可以去关闭BBS模块mihoyobbs.enable: false)
登录成功后复制 stoken='获取到的Stoken'
里的Stoken
,然后粘贴到config.yaml
的stoken: ""
中(在account
里面)
例子
stoken: 获取到的Stoken
检查config.yaml
的需求开启的功能的enable:
的值为 true
在命令提示符(cmd)/powershell,输入python main.py
来进行执行
多用户的请使用python main_multi.py
,多用户在需要自动执行的情况下请使用python main_multi.py autorun
打开你的浏览器,进入无痕/隐身模式
由于米哈游修改了 bbs 可以获取的 Cookie,导致一次获取的 Cookie 缺失,所以需要增加步骤
打开https://www.miyoushe.com/ys/
并进行登入操作
按下键盘上的F12
或右键检查,打开开发者工具,点击Source
或源代码
键盘按下Ctrl+F8
或点击停用断点按钮,点击▌▶
解除暂停
点击NetWork
或网络
,在Filter
或筛选器
里粘贴 getUserGameUnreadCount
,同时选择Fetch/XHR
点击一条捕获到的结果,往下拉,找到Cookie:
复制Cookie部分除Cookie:
的全部内容
将此处的复制到的 Cookie 先粘贴到 config 文件的 Cookie 处
此时 Cookie 已经获取完毕了
打开你的浏览器,进入无痕/隐身模式
打开https://act.hoyolab.com/bbs/event/signin/hkrpg/index.html?act_id=e202303301540311
并进行登入操作
按下键盘上的F12
或右键检查,打开开发者工具,在控制台输入:
document.cookie
从ltoken=....
开始复制到结尾
将获取到的 Cookie 粘贴到之前获取到 OS 的 Cookie 里面
建议使用打开浏览器的无痕/隐私/InPrivate模式
打开 云原神网页版
按下键盘上的F12
或右键检查,打开开发者工具,在打开后登入账号
在filter里面输入wallet/wallet/get
,选择status
为200
的记录
点击记录,往下拉,找到X-Rpc-Combo_token
,复制对应的值,成功获取token
Docker 的运行脚本基于 Linux 平台编写,暂未在 Win 平台测试。
将本项目 Clone 至本地后,请先按照上述步骤添加或修改配置文件。随后执行
docker-compose up -d
启动 docker 容器。
容器运行成功后可用
docker-compose logs -f
命令来查看程序输出。
若需要添加配置文件或修改配置文件,可直接在主机 config 文件夹中修改,修改的内容将实时同步在容器中。
每次运行 Docker 容器后,容器内将自动按照参数执行签到活动,签到完成后容器将默认在每天上午 9:30 运行一次,如果想自行修改时间可自行编辑docker-compose.yml
文件中的CRON_SIGNIN
,将其修改成想运行的时间。
若想要更新容器镜像,可以参考以下命令
docker-compose stop
docker-compose pull && docker-compose up -d
cp config/config.yaml.example kube/config.yaml
cd kube
kubectl create cm mihoyo-conf --from-file config.yaml
kubectl apply -f deployment.yaml
kubectl logs $(kubectl get pod -l app=mihoyo -o jsonpath="{.items[0].metadata.name}") -f --tail 40
将本项目 Clone 至本地后,安装好依赖直接运行python3 server.py
在后台运行时请安装 screen
使用screen -S automhy
进入后台线程
Ctrl+A 组合键再按下 d 键回到主线程
screen -r automhy
回到线程
如果不能回到线程请先screen -d automhy
挂起线程
stop: 关闭程序
mulit: 测试多用户签到
single: 测试单用户签到
reload: 重载配置文件
mod x: mod 1 为单用户模式 mod 2 为多用户模式
add 'yourcookie': 直接 add cookie 添加 Cookie,根据提示输入用户存档名称
time x: 设置任务巡查时间,默认 720 分钟(12 小时)
set user enable true(设置 user.json 的 enable 属性为 true)
show true/false: 开启/关闭 20 秒的倒计时提示
阿里云和腾讯云的云函数功能现已收费,请各位注意费用!
下载本项目
在脚本目录执行pip3 install -r requirements.txt -t .
在本地完整运行一次。
打开并登录云函数控制台。
新建云函数 - 自定义创建,函数类型选事件函数
,部署方式选代码部署
,运行环境选 Python 3.10(公测版)
.
提交方法选本地上传文件夹
,并在下方的函数代码处上传整个项目文件夹。
执行方法填写 index.main_handler
,多用户请填写index.main_handler_mulit
.
展开高级配置,将执行超时时间修改为 300 秒
,其他保持默认。
展开触发器配置,选中自定义创建,触发周期选择自定义触发周期
,并填写表达式0 0 10 * * * *
(此处为每天上午 10 时运行一次,可以自行修改)
完成,enjoy it!
pip3 install -r requirements.txt -t .
请求处理程序类型:处理事件请求
Python3.10
请求处理程序:index.main_handler
,多用户请填写index.main_handler_mulit
指定时间
环境信息
- 执行超时时间
为 300 秒。函数详情
测试函数
方式 1:订阅管理
名称:米游社签到
类型:公开仓库
链接:https://github.com/Womsxd/MihoyoBBSTools.git
定时类型:crontab
定时规则:2 2 28 * *
白名单:ql_main.py
依赖文件:error|mihoyo|log|push|req|set|tools|con|acc|captcha|main|gamecheckin|hoyo_checkin|competition|cloudgames|os_cloudgames
方式 2:指令拉取
ql repo https://github.com/Womsxd/MihoyoBBSTools.git "ql_main.py" "" "error|mihoyo|log|push|req|set|tools|con|acc|captcha|main|gamecheckin|hoyo_checkin|competition|cloudgames|os_cloudgames"
在青龙面板环境变量中添加以下变量
名称 | 值 | 功能 |
---|---|---|
AutoMihoyoBBS_config_path | /ql/data/config/ | 设置配置文件路径(必选) |
AutoMihoyoBBS_config_multi | 1 | 开启多用户(可选) |
AutoMihoyoBBS_config_prefix | mhy_ | 自定义文件开头(单用户可选,多用户推荐) |
AutoMihoyoBBS_push_project | 1 | 使用项目自带的Push,而不是青龙的 |
AutoMihoyoBBS_push_path | /ql/data/config/ | 项目自带的推送配置文件路径 |
AutoMihoyoBBS_push_name | push | 项目自带的推送配置文件名 |
注意!仅多用户需添加变量AutoMihoyoBBS_config_multi
AutoMihoyoBBS_push_path
和AutoMihoyoBBS_push_name
在青龙里面仅在启用项目自带的推送后才生效
进入容器后运行以下命令(docker exec -it ql bash)修改 ql 为你的青龙容器名字
单用户请使用以下命令复制配置文件
cp /ql/data/repo/Womsxd_MihoyoBBSTools/config/config.yaml.example /ql/data/config/config.yaml
多用户需要注意,配置文件的名字必须以mhy_
开头,之后的[config*]
可以为任意字符
或通过环境变量AutoMihoyoBBS_config_prefix
来自定义开头,如果不配置则默认mhy_
开头
cp /ql/data/repo/Womsxd_MihoyoBBSTools/config/config.yaml.example /ql/data/config/mhy_[config1].yaml
cp /ql/data/repo/Womsxd_MihoyoBBSTools/config/config.yaml.example /ql/data/config/mhy_[config2].yaml
cp /ql/data/repo/Womsxd_MihoyoBBSTools/config/config.yaml.example /ql/data/config/mhy_[config3].yaml
……
cp /ql/data/repo/Womsxd_MihoyoBBSTools/config/config.yaml.example /ql/data/config/mhy_[config*].yaml
在青龙面板依赖管理中添加 httpx 及 PyYAML
单用户在配置文件内 config.yaml 中编辑信息
多用户在配置文件内 mhy_[config*].yaml 中编辑信息
*注:通知配置为青龙 config.sh 中配置
requests仅作为在httpx无法使用时的备用选择,可能未来版本会进行移除
本项目不支持也不推荐使用Github Actions
来每日自动执行!
也不会处理使用Github Actions
执行有关的 issues!
还有正在使用这份程序的你