MihoyoBBSTools/main.py

100 lines
4.3 KiB
Python
Raw Normal View History

import time
2022-01-09 09:31:44 +00:00
import push
2021-05-24 08:16:52 +00:00
import login
import config
import random
2021-05-24 08:16:52 +00:00
import genshin
import setting
import mihoyobbs
import honkai3rd
2022-01-06 05:49:25 +00:00
from loghelper import log
from error import CookieError
2021-05-24 08:16:52 +00:00
2021-10-25 14:53:34 +00:00
2021-05-24 08:16:52 +00:00
def main():
2021-10-25 14:53:34 +00:00
# 初始化,加载配置
2022-04-23 01:35:26 +00:00
return_data = "\n米游社: "
2022-01-06 05:49:25 +00:00
config.load_config()
2021-09-30 13:00:12 +00:00
if config.enable_Config:
2021-10-25 14:53:34 +00:00
# 检测参数是否齐全,如果缺少就进行登入操作
2021-06-06 13:19:28 +00:00
if config.mihoyobbs_Login_ticket == "" or config.mihoyobbs_Stuid == "" or config.mihoyobbs_Stoken == "":
2021-12-02 02:53:30 +00:00
# 登入如果没开启bbs全局没打开就无需进行登入操作
if config.mihoyobbs["bbs_Global"]:
login.login()
2021-08-06 01:13:57 +00:00
time.sleep(random.randint(2, 8))
2021-10-25 14:53:34 +00:00
# 获取要使用的BBS列表,#判断是否开启bbs_Signin_multi
2021-09-30 13:00:12 +00:00
if config.mihoyobbs["bbs_Signin_multi"]:
2021-10-25 14:53:34 +00:00
# 用这里的方案可以实现当让id在第一个的时候为主社区
2021-08-03 02:35:55 +00:00
for i in config.mihoyobbs["bbs_Signin_multi_list"]:
2021-06-06 05:04:18 +00:00
for i2 in setting.mihoyobbs_List:
2021-06-06 13:19:28 +00:00
if i == int(i2["id"]):
2021-06-06 05:04:18 +00:00
setting.mihoyobbs_List_Use.append(i2)
2021-05-26 10:11:27 +00:00
else:
2021-10-25 14:53:34 +00:00
# 关闭bbs_Signin_multi后只签到大别墅
2021-05-26 10:11:27 +00:00
for i in setting.mihoyobbs_List:
2021-06-06 13:19:28 +00:00
if int(i["id"]) == 5:
2021-05-26 10:11:27 +00:00
setting.mihoyobbs_List_Use.append(i)
2021-10-25 14:53:34 +00:00
# 米游社签到
2021-09-30 13:00:12 +00:00
if config.mihoyobbs["bbs_Global"]:
2022-04-23 01:35:26 +00:00
bbs = mihoyobbs.Mihoyobbs()
2021-10-25 14:53:34 +00:00
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"]:
2022-04-23 01:35:26 +00:00
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}个米游币")
2021-10-25 14:53:34 +00:00
else:
2022-04-23 01:35:26 +00:00
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}个米游币")
2021-08-06 01:13:57 +00:00
time.sleep(random.randint(2, 8))
2021-06-01 11:16:01 +00:00
else:
2022-01-30 03:58:31 +00:00
return_data += "\n" + "米游社功能未启用!"
2022-01-06 05:49:25 +00:00
log.info("米游社功能未启用!")
2021-10-25 14:53:34 +00:00
# 原神签到
2021-09-30 13:00:12 +00:00
if config.genshin_Auto_sign:
2022-01-06 05:49:25 +00:00
log.info("正在进行原神签到")
genshin_help = genshin.Genshin()
2022-01-30 08:12:12 +00:00
return_data += "\n\n" + genshin_help.sign_account()
2021-08-06 01:13:57 +00:00
time.sleep(random.randint(2, 8))
2021-06-01 11:16:01 +00:00
else:
2022-01-06 05:49:25 +00:00
log.info("原神签到功能未启用!")
2021-10-25 14:53:34 +00:00
# 崩坏3签到
2021-09-30 13:00:12 +00:00
if config.honkai3rd_Auto_sign:
2022-01-06 05:49:25 +00:00
log.info("正在进行崩坏3签到")
2022-01-30 03:58:31 +00:00
honkai3rd_help = honkai3rd.Honkai3rd()
2022-01-30 08:12:12 +00:00
return_data += "\n\n" + honkai3rd_help.sign_account()
else:
2022-01-06 05:49:25 +00:00
log.info("崩坏3签到功能未启用")
2022-01-30 03:58:31 +00:00
return 0, return_data
2022-04-25 08:07:37 +00:00
elif config.mihoyobbs_Cookies == "CookieError":
raise CookieError('Cookie expires')
2021-05-24 08:16:52 +00:00
else:
2022-01-06 05:49:25 +00:00
log.warning("Config未启用")
2022-01-30 03:58:31 +00:00
return 1, "Config未启用"
2021-10-25 14:53:34 +00:00
2021-05-24 08:16:52 +00:00
if __name__ == "__main__":
2022-01-06 03:27:24 +00:00
try:
2022-01-30 03:58:31 +00:00
status_code, message = main()
2022-01-06 05:49:25 +00:00
except CookieError:
2022-03-10 08:17:05 +00:00
status_code = 1
message = "账号Cookie出错"
2022-01-06 05:49:25 +00:00
log.error("账号Cookie有问题")
2022-01-30 03:58:31 +00:00
push.push(status_code, message)
2021-10-25 14:53:34 +00:00
pass