cm_bot_v2/cm_transfer_credit.py
yiekheng 214612a7db + Fix wrong docker time
+ Temp add debug msg
2025-10-04 10:41:59 +08:00

41 lines
1.5 KiB
Python

from cm_bot_hal import CM_BOT_HAL
import logging, time, requests, json
from concurrent.futures import ThreadPoolExecutor
from datetime import datetime
from tqdm import tqdm
logging.basicConfig(
format="%(asctime)s - %(name)s - %(levelname)s - %(message)s", level=logging.INFO
)
logging.getLogger("httpx").setLevel(logging.WARNING)
logger = logging.getLogger(__name__)
# api_url = 'https://api.luckytown888.net'
api_url = 'https://localhost:3000'
max_threading = 1
def transfer(data: dict):
bot = CM_BOT_HAL()
logger.info(f"[Start] Transfer Credit from {data['f_username']} to {data['t_username']}")
bot.transfer_credit_api(data['f_username'], data['f_password'], data['t_username'], data['t_password'])
logger.info(f"[DONE] {data['f_username']} transfer done!")
del bot
time.sleep(0.5)
while True:
weekday = int(datetime.now().strftime("%w"))
hour = int(datetime.now().strftime("%H"))
minutes = int(datetime.now().strftime("%M"))
print(f'weekday: {weekday}, hour: {hour}, minutes: {minutes}')
if weekday == 6 and (hour >= 9 and hour < 22):
print('hi')
response = requests.get(f'{api_url}/user')
items = json.loads(response.text)
total_items = len(items) if isinstance(items, list) else 0
if total_items == 0:
logger.info("No items to process.")
else:
with ThreadPoolExecutor(max_workers=max_threading) as executor:
list(tqdm(executor.map(transfer, items), total=total_items, desc="Processing data"))
time.sleep(1)