From ba6d71b8ad63a50ae45df5ccc8ecbae1285829ed Mon Sep 17 00:00:00 2001 From: Womsxd <45663319+Womsxd@users.noreply.github.com> Date: Mon, 24 May 2021 19:48:03 +0800 Subject: [PATCH] =?UTF-8?q?=E5=B0=8F=E8=BF=B7=E7=B3=8A(?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 还是小迷糊造成的问题( 还是小迷糊造成的问题 --- genshin.py | 32 +++++++++++++++++++------------- main.py | 19 +++++++++++-------- 2 files changed, 30 insertions(+), 21 deletions(-) diff --git a/genshin.py b/genshin.py index cd507d5..c776af3 100644 --- a/genshin.py +++ b/genshin.py @@ -42,15 +42,20 @@ class genshin: exit() return (data["data"]["awards"]) #判断签到 - def Is_sing(self, region:str, uid:str) -> list: + def Is_sing(self, region:str, uid:str): req = httpx.get(setting.genshin_Is_singurl.format(setting.genshin_Act_id, region, uid), headers=self.headers) data = req.json() if (data["retcode"] != 0): tools.log.warn("获取账号签到信息失败!") print (req.text) exit() - return (data[data]) + return (data["data"]) #签到 + def Get_item(self, raw_data:dict) ->str: + temp_Name = raw_data["name"] + temp_Cnt = raw_data["cnt"] + return (f"{temp_Name}x{temp_Cnt}") + def Sing_acc(self): for i in self.acc_List: is_data = self.Is_sing(region = i[2], uid = i[1]) @@ -58,15 +63,16 @@ class genshin: tools.log.warn(f"旅行者{i[0]}是第一次绑定米游社,请先手动签到一次") else: sing_Days = is_data["total_sign_day"] - if (is_data["is_sing"] == True): - tools.log.info(f"旅行者{i[0]}今天已经签到过了~\r\n今天获得的奖励是{self.sing_Give[sing_Days]}") - req = httpx.post(url=setting.genshin_Singurl, headers=self.headers, - json={'act_id': setting.genshin_Act_id, 'region': i[2], 'uid': i[1]}) - data = req.json() - if (data["retcode"] == 0): - tools.log.info(f"旅行者{i[0]}签到成功~\r\n今天获得的奖励是{self.sing_Give[sing_Days + 1]}") - elif (data["retcode"] == -5003): - tools.log.info(f"旅行者{i[0]}今天已经签到过了~\r\n今天获得的奖励是{self.sing_Give[sing_Days]}") + if (is_data["is_sign"] == True): + tools.log.info(f"旅行者{i[0]}今天已经签到过了~\r\n今天获得的奖励是{self.Get_item(self.sing_Give[sing_Days])}") else: - tools.log.warn("账号签到失败!") - print (req.text) + req = httpx.post(url=setting.genshin_Singurl, headers=self.headers, + json={'act_id': setting.genshin_Act_id, 'region': i[2], 'uid': i[1]}) + data = req.json() + if (data["retcode"] == 0): + tools.log.info(f"旅行者{i[0]}签到成功~\r\n今天获得的奖励是{self.Get_item(self.sing_Give[sing_Days + 1])}") + elif (data["retcode"] == -5003): + tools.log.info(f"旅行者{i[0]}今天已经签到过了~\r\n今天获得的奖励是{self.Get_item(self.sing_Give[sing_Days])}") + else: + tools.log.warn("账号签到失败!") + print (req.text) diff --git a/main.py b/main.py index 397f5ab..c6d37de 100644 --- a/main.py +++ b/main.py @@ -7,19 +7,22 @@ import mihoyobbs def main(): #初始化,加载配置 config.Load_config() - #检测参数是否齐全,如果缺少就进行登入操作if (config.mihoyobbs_Login_ticket == "" or config.mihoyobbs_Stuid == "" or config.mihoyobbs_Stoken == ""): + #检测参数是否齐全,如果缺少就进行登入操作 + if (config.mihoyobbs_Login_ticket == "" or config.mihoyobbs_Stuid == "" or config.mihoyobbs_Stoken == ""): #登入 - login.login() - #获取要使用的BBS列表,#判断是否开启bbs_Singin_multiif (config.mihoyobbs["bbs_Singin_multi"] == True): - for i in setting.mihoyobbs_List: - if (int(i["id"]) in config.mihoyobbs["bbs_Singin_multi_list"]): + login.login() + #获取要使用的BBS列表,#判断是否开启bbs_Singin_multi + if (config.mihoyobbs["bbs_Singin_multi"] == True): + for i in setting.mihoyobbs_List: + if (int(i["id"]) in config.mihoyobbs["bbs_Singin_multi_list"]): setting.mihoyobbs_List_Use.append(i) else: - #关闭bbs_Singin_multi后只签到大别墅 + #关闭bbs_Singin_multi后只签到大别墅 for i in setting.mihoyobbs_List: if (int(i["id"]) == 5): setting.mihoyobbs_List_Use.append(i) - #米游社签到if(config.mihoyobbs["bbs_Gobal"] == True): + #米游社签到 + if(config.mihoyobbs["bbs_Gobal"] == True): bbs = mihoyobbs.mihoyobbs() if (config.mihoyobbs["bbs_Singin"] == True): bbs.Singin() @@ -30,7 +33,7 @@ def main(): if (config.mihoyobbs["bbs_Share"] == True): bbs.Share() if(config.genshin_AutoSingin == True): - genshin_Help = genshin + genshin_Help = genshin.genshin() genshin_Help.Sing_acc() if __name__ == "__main__":