miui-auto-tasks/miuitask.py
Night-stars-1 56c27977da
feat: 重构项目 (#138)
* 修复无法获取成长值的问题

更改成长值获取接口

* 修复无法获取成长值的问题

更改成长值获取接口

* 改用正则获取成长值

* 推送配置说明

* 更新推送

* 更新推送

* Update config.yaml

* Update config.yaml

* Update requirements.txt

* Update config.yaml

* format the file

* 提升版本号

* 提升版本号

* 提升版本号

* 修复取消点赞出错

* feat: 重构项目

* chore: add Exception

* add: repo report link

* feat: 添加token的获取

* chore: 修正签到参数

* Delete utils directory

* Delete config.yaml

* Delete miuitask.py

* feat: 重构项目

* Create __init__.py

* feat: 重构项目

* Create 1

* feat: 重构项目

* add: 添加cryptography依赖

* Delete utils/api/1

* chore: 使用yaml储存数据

* chore: 添加token异常提示
chore: 修正部分数据结构

* imp: add system info output

* imp: auto reformat by PyCharm

* imp: 增加鸣谢

* imp: 修改主程序名称

* fix: 添加被删除的文件

* imp: 根据新版本 修改GitHub Action 脚本

* add: 添加tenacity重试库,部分get_token添加重试机制
chore: 将token.py重命名为utils.py
chore: 添加captcha.py,用于用户自行解决验证码

* 增加信息显示

增加显示项目信息及系统信息

* imp: 修复github action 脚本

* imp: auto reformat by PyCharm

---------

Co-authored-by: 0-8-4 <ljd69154@liangjundi.cn>
Co-authored-by: TardisX <ranoklx@gmail.com>
2023-11-14 00:18:59 +11:00

41 lines
1.3 KiB
Python

"""
Date: 2023-11-13 20:29:19
LastEditors: Night-stars-1 nujj1042633805@gmail.com
LastEditTime: 2023-11-13 20:29:58
"""
import asyncio
from utils.api.login import Login
from utils.api.sign import BaseSign
from utils.config import ConfigManager
from utils.logger import log, get_message
from utils.request import notify_me
from utils.utils import get_token
from utils.system_info import print_info
_conf = ConfigManager.data_obj
async def main():
print_info()
for account in _conf.accounts:
login_obj = Login(account)
if (cookies := await login_obj.login()) and (token := await get_token(cookies["cUserId"])):
sign_obj = BaseSign(cookies)
daily_tasks = await sign_obj.check_daily_tasks()
sign_task_obj = sign_obj.AVAILABLE_SIGNS # 签到任务对象合集
for task in daily_tasks:
if not task.showType:
log.info(f"开始执行{task.name}任务")
if task_obj := sign_task_obj.get(task.name): # 签到任务对象
await task_obj(cookies, token).sign()
else:
log.error(f"未找到{task.name}任务")
else:
log.info(f"{task.name}任务已完成")
notify_me(get_message())
if __name__ == "__main__":
asyncio.run(main())