Ljzd-PRO / Mys_Goods_Tool

米游社商品兑换工具 | 短信验证登录 | 终端图形界面
https://pypi.org/project/mys-goods-tool
MIT License
460 stars 70 forks source link

对于无法抓包的其他可选方案 #43

Closed qingguoer123 closed 2 years ago

qingguoer123 commented 2 years ago

大佬,我试了很多方法都没能成功抓到包,有什么容易一点的方法吗

qingguoer123 commented 2 years ago

要不您帮忙帮我抓一下包,试了一晚上太难受了

Ljzd-PRO commented 2 years ago

大佬,我试了很多方法都没能成功抓到包,有什么容易一点的方法吗

是没法进行抓包吗?例如安卓没有Root,抓包工具的证书不被米游社App信任,导致开启抓包以后米游社App内无法连接网络

qingguoer123 commented 2 years ago

嗯,然后试了模拟器也不太行

Ljzd-PRO commented 2 years ago

可以先用网页版米游社。

  1. 登录: https://user.mihoyo.com/
  2. 在浏览器中打开开发者模式,进入控制台,复制粘贴下面的语句并回车,可以得到Cookie
    var cookie=document.cookie;var ask=confirm('是否保存到剪切板?\nCookie查找结果:'+cookie);if(ask==true){copy(cookie);msg=cookie}else{msg='Cancel'}")
    • 如果需要兑换游戏内物品的话,继续往下
  3. 然后把其中 login_ticket 替换下面URL的 {1}stuid(就是米游社用户ID) 替换 {2} (参考 #42)
    https://api-takumi.mihoyo.com/auth/api/getMultiTokenByLoginTicket?login_ticket={1}&token_types=3&uid={2}
  4. 浏览器访问上面改好的URL,会返回一些文字,里面有 stoken,把 stoken 添加到第1步获取的Cookie中,这种方式不需要Cookie里有mid。最后填入 config.ini。
qingguoer123 commented 2 years ago

可以先用网页版米游社。

  1. 登录: https://user.mihoyo.com/
  2. 在浏览器中打开开发者模式,进入控制台,复制粘贴下面的语句并回车,可以得到Cookie
var cookie=document.cookie;var ask=confirm('是否保存到剪切板?\nCookie查找结果:'+cookie);if(ask==true){copy(cookie);msg=cookie}else{msg='Cancel'}")
  • 如果需要兑换游戏内物品的话,继续往下
  1. 然后把其中 login_ticket 替换下面URL的 {1}stuid(就是米游社用户ID) 替换 {2} (参考 tool.py 工具自动获取cookie处理har文件编码有误 #42)
https://api-takumi.mihoyo.com/auth/api/getMultiTokenByLoginTicket?login_ticket={1}&token_types=3&uid={2}
  1. 浏览器访问上面改好的URL,会返回一些文字,里面有 stoken,把 stoken 添加到第1步获取的Cookie中,这种方式不需要Cookie里有mid。最后填入 config.ini。

按照步骤填好了,我试了一下,好像不能运行,记录是这样的 2022-07-20 22:38:35 ERROR 商品:2022071212819 为游戏内物品,由于未配置 mid,放弃兑换该商品 2022-07-20 22:43:20 INFO 兑换商品:2021092414288 返回结果: {"data":null,"message":"invalid input format: strconv.ParseUint: parsing \u0026#34;...\u0026#34;: invalid syntax, key=address_id","retcode":-502} 而且使用tool也查询不了送货地址ID

Ljzd-PRO commented 2 years ago

按照步骤填好了,我试了一下,好像不能运行,记录是这样的 2022-07-20 22:38:35 ERROR 商品:2022071212819 为游戏内物品,由于未配置 mid,放弃兑换该商品 2022-07-20 22:43:20 INFO 兑换商品:2021092414288 返回结果: {"data":null,"message":"invalid input format: strconv.ParseUint: parsing \u0026#34;...\u0026#34;: invalid syntax, key=address_id","retcode":-502} 而且使用tool也查询不了送货地址ID

主程序可以先用改过的版本:https://github.com/Ljzd-PRO/Mys_Goods_Tool/actions/runs/2705833486

qingguoer123 commented 2 years ago

按照步骤填好了,我试了一下,好像不能运行,记录是这样的 2022-07-20 22:38:35 ERROR 商品:2022071212819 为游戏内物品,由于未配置 mid,放弃兑换该商品 2022-07-20 22:43:20 INFO 兑换商品:2021092414288 返回结果: {"data":null,"message":"invalid input format: strconv.ParseUint: parsing \u0026#34;...\u0026#34;: invalid syntax, key=address_id","retcode":-502} 而且使用tool也查询不了送货地址ID

主程序可以先用改过的版本:https://github.com/Ljzd-PRO/Mys_Goods_Tool/actions/runs/2705833486

使用tool查询送货地址ID 请求失败,正在重试会是什么原因啊

Ljzd-PRO commented 2 years ago

你在config.ini填的Cookie,有确保每一项后面都有;结尾吗?因为浏览器获取的Cookie我看最后一项末尾是不带分号;

Ljzd-PRO commented 2 years ago

使用tool查询送货地址ID 请求失败,正在重试会是什么原因啊

知道了,获取送货地址ID的话,需要Cookie有cookie_token,这个可以去网页版米游社任意区登陆,例如:https://bbs.mihoyo.com/dby/ 然后用上面那个命令来查看Cookie。 可以先在网页版米游社获取包含cookie_token的Cookie,填入config.ini,然后再用上面的方法获取stoken,把stokenlogin_ticket加到config.ini的Cookie里。

Ljzd-PRO commented 2 years ago

脚本下一个版本会把这种获取Cookie的方式加进去

Ljzd-PRO commented 2 years ago

现在可以通过短信验证登录一键获取Cookie了:https://github.com/Ljzd-PRO/Mys_Goods_Tool/actions/runs/2707247719 目前还是测试版,不过应该是没什么问题了。

Ljzd-PRO commented 2 years ago

现在可以通过短信验证登录一键获取Cookie了:https://github.com/Ljzd-PRO/Mys_Goods_Tool/actions/runs/2707247719 目前还是测试版,不过应该是没什么问题了。

新版本已发布:https://github.com/Ljzd-PRO/Mys_Goods_Tool/releases/tag/v1.4.0