注意事项

⚠️阅前请务必知悉:如为不信任的机器人,请勿配置,风险请自行承担。下文将简单概述两种绑定信息可能存在的风险。

  • cookie信息(简称ck)可以简单理解为当前帐号的登录信息,以用于获取体力详情、深渊通关情况、原神签到等米游社相关敏感操作,同样也拥有着进行米游社发帖、点赞和其他未知的敏感操作。

  • stoken信息可以理解等同于整个米哈游账户权限,理论上可以通过stoken来实时更新cookie,以登录您的帐号,进行可能的任何敏感操作。请根据自己的情况、是否信任当前使用的机器人,谨慎考虑。本人与本教程不承担任何法律责任,仅负责提供相关方法。

本人自行搭建有YAM_BOT v3.0.0机器人,如于我的机器人下进行ck和stoken配置,则默认信任我的机器人,出现任何帐号相关问题本人概不负责。我也不会闲得他妈没事干用ck信息弄什么违法的事,现在国内任何东西都是实名制为前提,我还不如好好上班多赚点钱。。。

为避免风险起见,你也可自行搭建一个私人的机器人

由于本人只拥有安卓手机和PC,本教程仅会提供上述两种设备类型的绑定方法(stoken信息绑定验证仅PC端可用),IOS相关则会引用他人的教程(未实际验证通过)。

自动获取cookie和Stoken

不适用于国际服

YAM_BOT v3.0.0机器人,可以通过发送 #登录米游社,获取米游社二维码,使用米游社扫码即可自动获取cookie和Stoken。将自动获取的cookie发送为机器人即可绑定成功。

手动cookie获取

cookie获取方式相对简单,但时效性短,在较长登录时间后可能出现失效的情况。

由于国服原神逐渐收紧cookie获取原神相关信息的权限,当帐号绑定cookie后,使用米游社相关查询功能时,BOT会提示 米游社查询遇到验证码,请稍后再试 的提示信息。此时需要使用手机打开米游社APP,多次点击我的──我的角色或个人原神信息中的实时便笺,以触发验证码操作页面。

PC端

  1. 使用无痕模式打开Chrome/Edge浏览器,再打开网页版米游社 miyoushe.com/ys 登录米游社。

  2. 登录完成后刷新一下页面,然后按 F12 打开开发者工具,找到Application(应用),点击左侧栏目的Cookie。

  3. 将HttpOnly下的打勾符号全部取消勾选。(双击即可编辑是否勾选)

  4. 在Console(控制台)下输入如下代码,然后敲击Enter回车。

    document.cookie

    即可获得当前登录账户的cookie信息,确保有account_mid_v2,cookie_token_v2,ltoken_v2等字段,全选复制,私聊发送给机器人即可。

安卓端

  1. 下载安装一个Via浏览器 。(约1.5M大小,极轻量的浏览器)

  2. 用Via浏览器的无痕模式打开网页版米游社 m.miyoushe.com/ys 登录米游社。

  3. 登录完成后点击地址左侧的盾牌,然后点击查看Cookies

  4. 在弹出的窗口中点击复制文本,即可得到Cookies信息,私聊发送给机器人即可。

IOS端

请看官方帮助文档:https://docs.qq.com/doc/DUWNVQVFTU3liTVlO 中关于IOS部分的操作。

手动stoken获取

stoken绑定相较于cookie的好处是稳定的使用米游社相关查询功能,可以随时对机器人私聊使用#刷新ck实时刷新cookie,无需手动重登,时效性长,难以失效。且绑定成功后,你能够进行社区米游币签到,自动获取抽卡记录等等;缺点是你需要自行了解和承担发送stoken信息到机器人后的风险。

下文仅介绍PC端方法,因为于我处可验证成功并绑定至机器人的唯一方法。

PC端

  1. 使用无痕模式打开Chrome/Edge浏览器,再打开网页版米游社 miyoushe.com/ys 登录米游社

  2. 当前窗口新建标签页,打开网页版米哈游通行证页面 user.mihoyo.com/#/login/captcha 登录米哈游通行证

  3. 登录完成后按F12,打开调试工具,选择控制台(Console),在控制台输入下面代码,然后按Enter回车。

    function getCookieMap(cookie) {
        let cookiePattern = /^(\S+)=(\S+)$/;
        let cookieArray = cookie.replace(/\s*/g, "").split(";");
        let cookieMap = new Map();
        for (let item of cookieArray) {
            let entry = item.split("=");
            if (!entry[0]) continue;
            cookieMap.set(entry[0], entry[1]);
        }
        return cookieMap;
    }
    const map = getCookieMap(document.cookie);
    let loginTicket = map.get("login_ticket");
    const loginUid = map.get("login_uid") ? map.get("login_uid") : map.get("ltuid");
    const url = "https://api-takumi.mihoyo.com/auth/api/getMultiTokenByLoginTicket?login_ticket=" +
        loginTicket + "&token_types=3&uid=" + loginUid;
    fetch(url, {
        "headers": {
            "x-rpc-device_id": "zxcvbnmasadfghjk123456",
            "Content-Type": "application/json;charset=UTF-8",
            "x-rpc-client_type": "",
            "x-rpc-app_version": "",
            "DS": "",
            "User-Agent": "Mozilla/5.0 (iPhone; CPU iPhone OS 14_0_1 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) miHoYoBBS/%s",
            "Referer": "cors",
            "Accept-Encoding": "gzip, deflate, br",
            "x-rpc-channel": "appstore",
        },
        "method": "GET"
    }).then(
        function (response) {
            if (response.status !== 200) {
                return false;
            }
            response.json().then(function (data) {
                if (!data.data) {
                    console.log(`stoken获取失败请刷新页面重试,错误信息:${data.message}`)
                    return false;
                }
                let stoken = `stuid=${loginUid};stoken=${data.data.list[0].token};ltoken=${data.data.list[1].token};`
                console.log(stoken)
                return true;
            });
        }
    ).catch(function (err) {
        return false;
    });

  4. 获取到stoken,格式参考:stuid=; stoken=; ltoken=**; 然后将得到的stoken复制,私聊发送给机器人即可。绑定成功后使用#刷新ck即可自动获取新的cookie信息。

    在将复制内容私聊发送给机器人(如果不能私聊可以加机器人好友或咨询机器人管理员)后,需要在30分钟内执行一次 #米游社原神签到 或者 #更新抽卡记录 等命令以保存stoken。

注意:如stoken绑定失败,则先尝试绑定cookie后再进行stoken的绑定。

手机端

由于本人在验证安卓端获取stoken方法时,无法成功将stoken绑定至机器人,本处仅放出官方stoken绑定教程链接,有兴趣的朋友可以点击查看。

查看链接

有关国际服米游社查询功能使用

国际服的管控相较国服而言宽松得多,在PC端使用无痕模式浏览器,在HoyoLab登录自己的帐号后,直接在控制台(Console)输入:

document.cookie

即可获得cookie,且不易失效,查询功能完整,一般登录一次可持续2个月左右,无米游社验证码等限制。

安卓端的cookie获取请参考上述国服安卓端cookie的获取方式。

参考资料

群QQ机器人使用教程_JamYiDo

官方文档──米游社通行证配置帮助

官方文档──体力查询帮助v1.2