Go to file
2021-01-05 16:33:00 +08:00
.github/workflows refactor 2021-01-05 15:38:58 +08:00
.gitignore refactor 2021-01-05 15:38:58 +08:00
.python-version refactor 2021-01-05 15:38:58 +08:00
genshin.py fix messages is None 2021-01-05 16:33:00 +08:00
README.md refactor 2021-01-05 15:38:58 +08:00
requirements.txt Fix valid requirements.txt 2020-11-19 10:22:25 +08:00
settings.py refactor 2021-01-05 15:38:58 +08:00

Genshin Impact Helper

Genshin Impact Helper GitHub stars GitHub forks GitHub issues GitHub contributors QQ Group Github workflow status

💭前言

吹水交流:130516740

原神是我见过的唯一一个游戏本体和签到福利分离的游戏,玩家为了签到还要额外下载米游社 App。

平心而论,目前的每日签到奖励真的不咋地,都知道是蚊子腿。事实上,你完全可以选择无视签到,不签也没啥大的损失;或者选择手动签到,但这样的话哪天忘记打卡了就很头疼。

我承认是馋了这 6W+ 摩拉和紫色经验书的奖励,于是撸了这个项目,实现自动每日签到。

如果觉得本项目对你有帮助,请顺手点个Star吧QAQ ♥

🌀简介

Genshin Impact Helper 可以自动化为你获取原神每日福利。

💡特性

  • 自动签到 程序会在每天早上自动执行签到流程,也可以随时通过部署教程的步骤4手动触发,具体时间参照此处
  • 支持订阅 通过配置SCKEY开启订阅,每天将签到结果推送到微信上
  • 支持多账号 不同账号的Cookie之间用#分隔,如:yourCookie1#yourCookie2
  • 支持多角色 支持绑定官服和B站渠道服角色的米游社账号

📐部署

查看教程

1. Fork 仓库

fork

浏览器打开 https://bbs.mihoyo.com/ys/ 并登录账号

2.1 方法一

  • F12,打开开发者工具,找到Network并点击
  • F5刷新页面,按下图复制Cookie

cookie

2.2 方法二

  • 复制以下代码
var cookie = document.cookie;
var ask = confirm('Cookie:' + cookie + '\n\n是否复制内容到剪切板');
if (ask == true) {
    copy(cookie);
    msg = cookie;
} else {
    msg = 'Cancel';
}
  • F12,打开开发者工具,找到Console并点击
  • 命令行粘贴代码并运行,获得类似Cookie:xxxxxx的输出信息
  • xxxxxx部分即为所需复制的Cookie,点击确定复制
  • 回到项目页面,依次点击Settings-->Secrets-->New secret

new-secret.png

  • 建立名为COOKIE的 secret值为步骤2中复制的Cookie内容,最后点击Add secret

  • secret名字必须为COOKIE

  • secret名字必须为COOKIE

  • secret名字必须为COOKIE

add-secret

4. 启用 Actions

Actions 默认为关闭状态Fork 之后需要手动执行一次,若成功运行其才会激活。

返回项目主页面,点击上方的Actions,再点击左侧的Genshin Impact Helper,再点击Run workflow

run

至此,部署完毕。

🔍结果

当你完成上述流程,可以在Actions页面点击Genshin Impact Helper-->build-->Run sign查看结果。

查看结果

签到成功

如果成功,会输出类似"result": "Success"的信息:

2020-11-18T22:11:45 INFO Sleep for 100 seconds ...
2020-11-18T22:13:26 INFO UID is 100***000
2020-11-18T22:13:27 INFO {
  "result": "Success",
  "message": "{\"retcode\": 0, \"message\": \"OK\", \"data\": {\"code\": \"ok\"}}"
}

签到失败

如果失败,会输出类似"result": "Failed"的信息:

2020-11-17T22:11:33 INFO Sleep for 54 seconds ...
2020-11-17T22:12:28 INFO UID is 100***000
2020-11-17T22:12:29 INFO {
  "result": "Failed",
  "message": "{\"data\": null, \"message\": \"请求异常\", \"retcode\": -401}"
}
Error: Process completed with exit code 255.

同时你会收到一封来自GitHub、标题为Run failed: Genshin Impact Helper - master的邮件。

🔨开发

如果需要重构或增加额外功能参考以下数据

roles = Roles(cookie).get_roles()
roles = {
    'retcode': 0,
    'message': 'OK',
    'data': {
        'list': [
            {
                'game_biz': 'hk4e_cn',
                'region': 'cn_gf01',
                'game_uid': '111111111',
                'nickname': '酸柚子',
                'level': 48,
                'is_chosen': False,
                'region_name': '天空岛',
                'is_official': True
            }
        ]
    }
}
infos = Sign(cookie).get_info()
infos = [
    {
        'retcode': 0,
        'message': 'OK',
        'data': {
            'total_sign_day': 5,
            'today': '2021-01-05',
            'is_sign': True,
            'first_bind': False,
            'is_sub': False,
            'month_first': False
        }
    }
]

🔔订阅

若开启订阅推送,无论成功与否,都会收到微信通知。

  • 使用 GitHub 登录 sc.ftqq.com 创建账号
  • 点击「发送消息」,获取SCKEY
  • 点击「微信推送」,完成微信绑定
  • 建立名为SCKEY的 secret并添加获取的 SCKEY 值,开启订阅推送

️协议

使用 Genshin Impact Helper 即表明,您知情并同意:

  • 此代码通过模拟浏览器使用 Cookies 登录米游社网页,点击页面完成签到来实现签到。功能通过官方公开的 API 实现,并非游戏外挂
  • 用户之 Cookie 被储存于 Github 服务器,只供本项目使用。若 Github 服务器被攻破,则您的 Cookie 有遭到泄露的风险。除此之外,开发者无权获取您的 Cookie即使是用户一旦创建完成Secrets,也无法再次从中查看 Cookie
  • Genshin Impact Helper 不会对您的任何损失负责,包括但不限于奖励回收、账号异常、刻晴被削、矿产被挖、核弹爆炸、第三次世界大战等