| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869 |
- # -*- coding: utf-8 -*-
- # Author : Charley
- # Python : 3.10.8
- # Date : 2025/3/24 17:53
- import requests
- # from loguru import logger
- from mysql_pool import MySQLConnectionPool
- from settings import *
- # logger.remove()
- # logger.add("./logs/login_{time:YYYYMMDD}.log", encoding='utf-8', rotation="00:00",
- # format="[{time:YYYY-MM-DD HH:mm:ss.SSS}] {level} {message}",
- # level="DEBUG", retention="7 day")
- def get_token(log):
- log.debug("Start fetching token...........")
- headers = {
- "User-Agent": "Dart/3.5 (dart:io)",
- "Accept-Encoding": "gzip",
- "Content-Type": "application/json",
- "deviceid": "763f77b1-cc16-4369-ac39-a03206ecfb48",
- "brand": "Redmi",
- "os": "android",
- "content-type": "application/json; charset=utf-8",
- "authori-zation": "",
- "systemversion": "32",
- "lang": "zh",
- "verse-ua": "12fe307ef8850bdd64f6dcf1986944ae",
- "version": "2.0.0",
- "isphysicaldevice": "true",
- "cid": ""
- }
- url = "https://api.luckycards.com.cn/api/front/login/pwd"
- data = {
- "phone": "19521500850",
- "pwd": "Pass2025",
- "spreaderInviteCode": ""
- }
- response = requests.post(url, headers=headers, json=data)
- # print(response.text)
- resp_json = response.json()
- if resp_json["code"] == 200:
- token = resp_json["data"]["token"]
- log.debug("Fetch token success!")
- return token
- else:
- log.error(f"Fetch token failed! Msg:{resp_json['message']}")
- return None
- @retry(stop=stop_after_attempt(100), wait=wait_fixed(3600), after=after_log)
- def login_main():
- # 配置 MySQL 连接池
- sql_pool = MySQLConnectionPool(log=logger)
- if not sql_pool.check_pool_health():
- logger.error("数据库连接池异常")
- raise RuntimeError("数据库连接池异常")
- token = get_token(logger)
- if token is None:
- logger.error("获取token失败")
- raise RuntimeError("获取token失败")
- else:
- sql_pool.update_one_or_dict(table="leka_token", data={"token": token}, condition={"id": 1})
- logger.debug("------------------ 更新token成功 ------------------")
- if __name__ == '__main__':
- login_main()
|