吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 29411|回复: 129
收起左侧

[Python 转载] 【原神】米游社签到脚本 11-26日更新

  [复制链接]
苏半仙儿 发表于 2020-10-20 22:20
本帖最后由 苏半仙儿 于 2021-1-4 23:20 编辑

米游社时不时的就忘记签到,虽然奖励也不咋地,但蚊子腿也是肉呀,哈哈哈

打开米游社,自己抓几个包就行了。
关于act_id,region,uid和cookie,点开米游社首页的签到福利,里面会有很多请求,有部分GET请求带有这些参数

推荐PC抓手机的包
我用的抓包工具是:Charles,论坛有很多,自行搜索。

2020.11.19日更新说明:米游社搞了签到的头信息验证,18号之后开始签到失败,重新复制py脚本替换自己的信息即可。

2020.11.26日更新说明:米游社头信息DS信息生成(修复签到请求异常)本次更新参考了Github作者的DS生成算法

2021.1.4日更新说明:更新DS算法,根据米游社版本生成不同的DS信息(修复”请在米游社App内打开~“)

Python新手,代码很丑。

这是腾讯云函数版本,直接复制代码到腾讯云函数即可

[Python] 纯文本查看 复制代码
001
002
003
004
005
006
007
008
009
010
011
012
013
014
015
016
017
018
019
020
021
022
023
024
025
026
027
028
029
030
031
032
033
034
035
036
037
038
039
040
041
042
043
044
045
046
047
048
049
050
051
052
053
054
055
056
057
058
059
060
061
062
063
064
065
066
067
068
069
070
071
072
073
074
075
076
077
078
079
080
081
082
083
084
085
086
087
088
089
090
091
092
093
094
095
096
097
098
099
100
101
102
103
104
105
# -*- coding: utf-8 -*-
import json
import requests
import time
import hashlib
import string
import random
 
def main_handler(event, context):
    buildHearders()
    # 签到
    signResult = sign()
    # 游戏信息
    totalSignDay = getTotalSignDay()["data"]
    totalSignDay = totalSignDay["total_sign_day"]
    gameInfo = getGameInfo()["data"]["list"][0]
    signInfo = getSignInfo()["data"]
    award = signInfo["awards"][totalSignDay - 1]
    # 方糖message内容,请不要格式化这段字符串
    message = '''>{}
 
##### 游戏昵称:{}
##### 冒险等级:{}
##### 签到结果:{}
##### 签到奖励:{} x {}
##### {}月累计签到:**{}** 天'''.format(time.strftime("%Y-%m-%d %H:%M:%S", time.localtime(time.time()+28800)), gameInfo["nickname"],
                                 gameInfo["level"],
                                 signResult['message'], award['name'], award['cnt'], signInfo["month"],
                                 totalSignDay)
    return notify(message)
 
 
# 设置请求头
def buildHearders():
    headers["Cookie"] = cookie
    headers["x-rpc-device_id"] = device_id
    headers["Host"] = "api-takumi.mihoyo.com"
    headers["Content-type"] = "application/json;charset=utf-8"
    headers["Accept"] = "application/json, text/plain, */*"
    headers["x-rpc-client_type"] = "5"
    headers["x-rpc-app_version"] = app_version
    headers["DS"] = getDS()
 
def md5(text):
    md5 = hashlib.md5()
    md5.update(text.encode())
    return md5.hexdigest()
 
 
def getDS():
    # n = 'cx2y9z9a29tfqvr1qsq6c7yz99b5jsqt' # v2.2.0 @Womsxd   
    n = 'h8w582wxwgqvahcdkpvdhbh2w9casgfl' # v2.3.0 web @povsister & @journey-ad   
    i = str(int(time.time()))
    r = ''.join(random.sample(string.ascii_lowercase + string.digits, 6))
    c = md5("salt=" + n + "&t=" + i + "&r=" + r)
    return "{},{},{}".format(i, r, c)
 
# 签到
def sign():
    signUrl = "https://api-takumi.mihoyo.com/event/bbs_sign_reward/sign"
    param = {"act_id": act_id, "region": region, "uid": uid}
    result = requests.request("POST", signUrl, headers=headers, data=json.dumps(param))
    return json.loads(result.content)
 
 
# 获取签到信息
def getSignInfo():
    url = "https://api-takumi.mihoyo.com/event/bbs_sign_reward/home?act_id={}"
    userInfoResult = requests.get(url.format(act_id), headers=headers)
    return json.loads(userInfoResult.content)
 
 
# 获取签到天数
def getTotalSignDay():
    url = "https://api-takumi.mihoyo.com/event/bbs_sign_reward/info?region={}&act_id={}&uid={}"
    userInfoResult = requests.get(url.format(region, act_id, uid), headers=headers)
    return json.loads(userInfoResult.content)
 
 
# 获取游戏信息
def getGameInfo():
    url = "https://api-takumi.mihoyo.com/binding/api/getUserGameRolesByCookie?game_biz=hk4e_cn"
    userInfoResult = requests.get(url, headers=headers)
    return json.loads(userInfoResult.content)
 
 
# 微信推送
def notify(message):
    snedKey = "替换方糖通知key,度娘:server酱"
    notifyUrl = "http://sc.ftqq.com/{}.send"
    param = {'text': '米游社签到',
             'desp': message}
    notifyResult = requests.request("POST", notifyUrl.format(snedKey), headers={}, data=param, files=[])
    return json.loads(notifyResult.text)
 
app_version = "2.3.0"
act_id = "e202009291139501"
region = "cn_gf01"
uid = "替换 uid"
cookie = "替换 cookie"
# 设备号随意,但不能为空
device_id = "94581081EDD446EFAA3A45B8CC636CCF"
headers = {
    "User-Agent": "Mozilla/5.0 (iPhone; CPU iPhone OS 13_3_1 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) miHoYoBBS/2.3.0"
}


这个签到时间和实际时间差8小时,我弄不来py的时区问题。如果有大佬知道怎么搞,还请私我哦~~~
image.png



免费评分

参与人数 18吾爱币 +19 热心值 +17 收起 理由
你的小猫猫 + 1 + 1 热心回复!
prettys + 1 + 1 感谢分享 确实方便
0821fzh + 1 + 1 谢谢@Thanks!
yoaan + 1 谢谢@Thanks!
Rin喵 + 1 + 1 谢谢@Thanks!
mastermaoli + 1 + 1 鼓励转贴优秀软件安全工具和文档!
a3438431 + 1 + 1 能教一下新手怎么弄吗?
Nagiya15236 + 1 + 1 我很赞同!
SuperQiang + 1 + 1 谢谢@Thanks!
z13202013 + 1 + 1 时间是服务器时间(UTC+8),如果能讲下怎么抓包就好咯
Bell520vae + 2 + 1 我很赞同!
小狐狸FM + 1 + 1 我很赞同!
yuehe + 1 + 1 我很赞同!
真是我的 + 1 + 1 谢谢@Thanks!
HalcyonSuoh + 1 + 1 我很赞同!
yagoo + 1 + 1 谢谢@Thanks!
1795540964 + 1 + 1 抓包用哪个软件啊
冰课玏好喝 + 1 + 1 我很赞同!

查看全部评分

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

TRACEYOU 发表于 2020-10-21 08:10
桂K66666666 发表于 2020-10-20 22:39
看到好多这个游戏的代言,然后下载玩半天,嗯,刷DY去

证明你不是目标用户,你不够二次元
 楼主| 苏半仙儿 发表于 2020-11-13 16:02
阴险的眼镜仔 发表于 2020-11-13 12:12
我自己手机号注册的也是差不多,老抽不中。
然后就去咸鱼买个三无邮箱5星号,没想到1.1版本再单抽中了达 ...

我也是咸鱼买了个刻晴号,但是没怎么玩。可以送你。我肝不动小号,哈哈
桂K66666666 发表于 2020-10-20 22:39
看到好多这个游戏的代言,然后下载玩半天,嗯,刷DY去
大兵马元帅 发表于 2020-10-20 22:50
这是什么游戏吗?
 楼主| 苏半仙儿 发表于 2020-10-20 22:55
桂K66666666 发表于 2020-10-20 22:39
看到好多这个游戏的代言,然后下载玩半天,嗯,刷DY去

又肝又氪,哈哈哈哈
 楼主| 苏半仙儿 发表于 2020-10-20 22:56

对的,9月份新出的游戏,国产塞尔达
dgsx61 发表于 2020-10-20 23:59
我这边安卓有种抓不到的感觉,基本全加密的
callyla 发表于 2020-10-21 00:31
能不能给个直截了当的,完全没看懂就等着白拿玩游戏的
AcediaZzz 发表于 2020-10-21 00:33
可惜我是B服
jay9188 发表于 2020-10-21 08:10
听说这游戏花钱如流水 是不是真的啊
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2025-4-3 03:55

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表