mirror of
https://github.com/TDSCDMAA/AutoMihoyoBBS.git
synced 2026-06-02 18:43:42 +08:00
增加重试
This commit is contained in:
parent
1e1f3459a5
commit
25cc35461c
41
main.py
41
main.py
@ -13,7 +13,7 @@ from error import CookieError
|
||||
|
||||
def main():
|
||||
# 初始化,加载配置
|
||||
return_data = "\n米游社:"
|
||||
return_data = "\n米游社: "
|
||||
config.load_config()
|
||||
if config.enable_Config:
|
||||
# 检测参数是否齐全,如果缺少就进行登入操作
|
||||
@ -36,26 +36,31 @@ def main():
|
||||
setting.mihoyobbs_List_Use.append(i)
|
||||
# 米游社签到
|
||||
if config.mihoyobbs["bbs_Global"]:
|
||||
bbs = mihoyobbs.mihoyobbs()
|
||||
bbs = mihoyobbs.Mihoyobbs()
|
||||
if bbs.Task_do["bbs_Sign"] and bbs.Task_do["bbs_Read_posts"] and bbs.Task_do["bbs_Like_posts"] and \
|
||||
bbs.Task_do["bbs_Share"]:
|
||||
return_data += "\n" + f"今天已经全部完成了!\n"\
|
||||
f"一共获得{mihoyobbs.Today_have_getcoins}个米游币\n目前有{mihoyobbs.Have_coins}个米游币"
|
||||
log.info(f"今天已经全部完成了!一共获得{mihoyobbs.Today_have_getcoins}个米游币,目前有{mihoyobbs.Have_coins}个米游币")
|
||||
return_data += "\n" + f"今天已经全部完成了!\n" \
|
||||
f"一共获得{mihoyobbs.today_have_get_coins}个米游币\n目前有{mihoyobbs.Have_coins}个米游币"
|
||||
log.info(f"今天已经全部完成了!一共获得{mihoyobbs.today_have_get_coins}个米游币,目前有{mihoyobbs.Have_coins}个米游币")
|
||||
else:
|
||||
if config.mihoyobbs["bbs_Signin"]:
|
||||
bbs.signing()
|
||||
if config.mihoyobbs["bbs_Read_posts"]:
|
||||
bbs.read_posts()
|
||||
if config.mihoyobbs["bbs_Like_posts"]:
|
||||
bbs.Likeposts()
|
||||
if config.mihoyobbs["bbs_Share"]:
|
||||
bbs.share_post()
|
||||
bbs.Get_taskslist()
|
||||
return_data += "\n" + f"今天已经获得{mihoyobbs.Today_have_getcoins}个米游币\n"\
|
||||
f"还能获得{mihoyobbs.Today_getcoins}个米游币\n目前有{mihoyobbs.Have_coins}个米游币"
|
||||
log.info(f"今天已经获得{mihoyobbs.Today_have_getcoins}个米游币,"
|
||||
f"还能获得{mihoyobbs.Today_getcoins}个米游币,目前有{mihoyobbs.Have_coins}个米游币")
|
||||
i = 0
|
||||
while mihoyobbs.today_get_coins != 0 and i < 3:
|
||||
if i > 0:
|
||||
bbs.refresh_list()
|
||||
if config.mihoyobbs["bbs_Signin"]:
|
||||
bbs.signing()
|
||||
if config.mihoyobbs["bbs_Read_posts"]:
|
||||
bbs.read_posts()
|
||||
if config.mihoyobbs["bbs_Like_posts"]:
|
||||
bbs.like_posts()
|
||||
if config.mihoyobbs["bbs_Share"]:
|
||||
bbs.share_post()
|
||||
bbs.get_tasks_list()
|
||||
i += 1
|
||||
return_data += "\n" + f"今天已经获得{mihoyobbs.today_have_get_coins}个米游币\n" \
|
||||
f"还能获得{mihoyobbs.today_get_coins}个米游币\n目前有{mihoyobbs.Have_coins}个米游币"
|
||||
log.info(f"今天已经获得{mihoyobbs.today_have_get_coins}个米游币,"
|
||||
f"还能获得{mihoyobbs.today_get_coins}个米游币,目前有{mihoyobbs.Have_coins}个米游币")
|
||||
time.sleep(random.randint(2, 8))
|
||||
else:
|
||||
return_data += "\n" + "米游社功能未启用!"
|
||||
|
||||
44
mihoyobbs.py
44
mihoyobbs.py
@ -7,13 +7,12 @@ from request import http
|
||||
from loghelper import log
|
||||
from error import CookieError
|
||||
|
||||
|
||||
Today_getcoins = 0
|
||||
Today_have_getcoins = 0 # 这个变量以后可能会用上,先留着了
|
||||
today_get_coins = 0
|
||||
today_have_get_coins = 0 # 这个变量以后可能会用上,先留着了
|
||||
Have_coins = 0
|
||||
|
||||
|
||||
class mihoyobbs:
|
||||
class Mihoyobbs:
|
||||
def __init__(self):
|
||||
self.headers = {
|
||||
"DS": tools.get_ds(web=False, web_old=False),
|
||||
@ -37,17 +36,20 @@ class mihoyobbs:
|
||||
"bbs_Like_posts_num": 5,
|
||||
"bbs_Share": False
|
||||
}
|
||||
self.Get_taskslist()
|
||||
self.get_tasks_list()
|
||||
# 如果这三个任务都做了就没必要获取帖子了
|
||||
if self.Task_do["bbs_Read_posts"] and self.Task_do["bbs_Like_posts"] and self.Task_do["bbs_Share"]:
|
||||
pass
|
||||
else:
|
||||
self.postsList = self.get_list()
|
||||
|
||||
def refresh_list(self) -> None:
|
||||
self.postsList = self.get_list()
|
||||
|
||||
# 获取任务列表,用来判断做了哪些任务
|
||||
def Get_taskslist(self):
|
||||
global Today_getcoins
|
||||
global Today_have_getcoins
|
||||
def get_tasks_list(self):
|
||||
global today_get_coins
|
||||
global today_have_get_coins
|
||||
global Have_coins
|
||||
log.info("正在获取任务列表")
|
||||
req = http.get(url=setting.bbs_Tasks_list, headers=self.headers)
|
||||
@ -57,11 +59,11 @@ class mihoyobbs:
|
||||
config.clear_cookies()
|
||||
raise CookieError('Cookie expires')
|
||||
else:
|
||||
Today_getcoins = data["data"]["can_get_points"]
|
||||
Today_have_getcoins = data["data"]["already_received_points"]
|
||||
today_get_coins = data["data"]["can_get_points"]
|
||||
today_have_get_coins = data["data"]["already_received_points"]
|
||||
Have_coins = data["data"]["total_points"]
|
||||
# 如果当日可获取米游币数量为0直接判断全部任务都完成了
|
||||
if Today_getcoins == 0:
|
||||
if today_get_coins == 0:
|
||||
self.Task_do["bbs_Sign"] = True
|
||||
self.Task_do["bbs_Read_posts"] = True
|
||||
self.Task_do["bbs_Like_posts"] = True
|
||||
@ -69,10 +71,10 @@ class mihoyobbs:
|
||||
else:
|
||||
# 如果第0个大于或等于62则直接判定任务没做
|
||||
if data["data"]["states"][0]["mission_id"] >= 62:
|
||||
log.info(f"新的一天,今天可以获得{Today_getcoins}个米游币")
|
||||
log.info(f"新的一天,今天可以获得{today_get_coins}个米游币")
|
||||
pass
|
||||
else:
|
||||
log.info(f"似乎还有任务没完成,今天还能获得{Today_getcoins}")
|
||||
log.info(f"似乎还有任务没完成,今天还能获得{today_get_coins}")
|
||||
for i in data["data"]["states"]:
|
||||
# 58是讨论区签到
|
||||
if i["mission_id"] == 58:
|
||||
@ -101,10 +103,16 @@ class mihoyobbs:
|
||||
def get_list(self) -> list:
|
||||
temp_list = []
|
||||
log.info("正在获取帖子列表......")
|
||||
req = http.get(url=setting.bbs_List_url.format(setting.mihoyobbs_List_Use[0]["forumId"]), headers=self.headers)
|
||||
data = req.json()
|
||||
req = http.get(url=setting.bbs_List_url.format(setting.mihoyobbs_List_Use[0]["forumId"]),
|
||||
headers=self.headers)
|
||||
data = req.json()["data"]["list"]
|
||||
for n in range(5):
|
||||
temp_list.append([data["data"]["list"][n]["post"]["post_id"], data["data"]["list"][n]["post"]["subject"]])
|
||||
r_l = random.choice(data)
|
||||
while r_l["post"]["subject"] in str(temp_list):
|
||||
r_l = random.choice(data)
|
||||
temp_list.append([r_l["post"]["post_id"], r_l["post"]["subject"]])
|
||||
# temp_list.append([data["data"]["list"][n]["post"]["post_id"], data["data"]["list"][n]["post"]["subject"]])
|
||||
|
||||
log.info("已获取{}个帖子".format(len(temp_list)))
|
||||
return temp_list
|
||||
|
||||
@ -139,7 +147,7 @@ class mihoyobbs:
|
||||
time.sleep(random.randint(2, 8))
|
||||
|
||||
# 点赞
|
||||
def Likeposts(self):
|
||||
def like_posts(self):
|
||||
if self.Task_do["bbs_Like_posts"]:
|
||||
log.info("点赞任务已经完成过了~")
|
||||
else:
|
||||
@ -175,6 +183,6 @@ class mihoyobbs:
|
||||
log.info("分享任务执行成功......")
|
||||
break
|
||||
else:
|
||||
log.debug(f"分享任务执行失败,正在执行第{i+2}次,共3次")
|
||||
log.debug(f"分享任务执行失败,正在执行第{i + 2}次,共3次")
|
||||
time.sleep(random.randint(2, 8))
|
||||
time.sleep(random.randint(2, 8))
|
||||
|
||||
Loading…
Reference in New Issue
Block a user