From af5f3bc7c322ad40b92fe1727b300e42eb77dd71 Mon Sep 17 00:00:00 2001 From: pooneyy <85266337+pooneyy@users.noreply.github.com> Date: Fri, 26 Jan 2024 18:28:04 +0800 Subject: [PATCH] Update 1.3 --- README.md | 6 +++++- index.py | 32 ++++++++++++++++++-------------- 2 files changed, 23 insertions(+), 15 deletions(-) diff --git a/README.md b/README.md index 1480415..4abe63c 100644 --- a/README.md +++ b/README.md @@ -32,7 +32,11 @@ python index.py ### 更新日志 ``` -1.2 (2024.01.24) 更新:现有任务增加任务点时,将会收到提醒 +1.3 (2024.01.25) 修复: + 1、修复了表格显示错误; + 2、修复了其他错误。 + +1.2 (2024.01.24) 更新:现有任务增加任务点时,将会收到提醒。 1.1 (2024.01.20) 更新:优化了推送消息中表格的显示。 diff --git a/index.py b/index.py index b6ac654..450ea7d 100644 --- a/index.py +++ b/index.py @@ -17,7 +17,7 @@ import sys import requests -VERSION = '1.2' # 2024.01.24 +VERSION = '1.3' # 2024.01.25 CONFIG_VERSION = 2 HOST = "https://api.suanleme.cn/api/v1" @@ -26,12 +26,14 @@ def timeStamp_To_dateTime(timeStamp):return datetime.datetime.fromtimestamp(int( def isoDateTime_To_dateTime(iso_date_time):return datetime.datetime.strptime(iso_date_time, "%Y-%m-%dT%H:%M:%S.%f%z").strftime('%Y-%m-%d
%H:%M:%S') def saveConfig(config): + config['tasks_record'] = dict(sorted(config['tasks_record'].items(), reverse=True)) with open("config.json", "w", encoding='utf8') as file: json.dump(config, file, ensure_ascii=False, indent = 4) def loadConfig(): with open("config.json", "r+", encoding='utf8') as file: config = json.load(file) + config['tasks_record'] = {int(key):config['tasks_record'][key] for key in config['tasks_record']} return config def checkUpdate(): @@ -62,7 +64,7 @@ def sendMsg(config, msg): url = "http://www.pushplus.plus/send" data['token'] = config['pushplus_token'] data['title'] = '算了么来新单啦!' - data['template'] = 'markdown' + data['template'] = 'html' data['topic'] = config['pushplus_topic'] # 群组编码,发送群组消息。 data['content'] = msg response = requests.post(url,data=data) @@ -138,6 +140,7 @@ def analyzing_tasks_info(tasks): for task in tasks['results']: taskData = {} taskData['id'] = task['id'] + taskData['name'] = task['name'] taskData['detail'] = task['desc'] taskData['created_time'] = task['created_time'] taskData['peer_income'] = task['peer_income'] @@ -146,16 +149,17 @@ def analyzing_tasks_info(tasks): return taskList def taskList_To_Msg(taskList): - msg = r'''
''' + msg = r'''
任务ID任务细节创建时间单位收益总量
''' for i in taskList: msg += f'''''' - msg += "
任务ID任务细节创建时间单位收益总量
{i['id']}{i['detail']}{isoDateTime_To_dateTime(i['created_time'])}{i['peer_income']}{i['points']}
" + msg += "" return msg def updated_Tasks_To_Msg(tasksList,config): - msg = f'''|任务ID|任务点更新前|任务点更新后|\n|:----:|:----:|:----:|\n''' + msg = r'''
''' for task in tasksList: - msg += f'''|{task['id']}|{config.get('tasks_record').get(str(task['id']),{}).get('points',0)}|{task['points']}|\n''' + msg += f'''''' + msg += "
任务ID任务点更新前任务点更新后
{task['id']}{config.get('tasks_record').get(task['id'],{}).get('points',0)}{task['points']}
" return msg def loop(config): @@ -166,21 +170,21 @@ def loop(config): if tasksList: i = [i['id'] for i in tasksList] # 列表,临时存储订单ID用于寻找最大的ID latest_id = int(max(i)) - msg = '' + msg = '' if latest_id > config['latest_id']: config['latest_id'] = latest_id - msg += f"#### 有新订单。当前最新是 {latest_id}\n" + msg += f"

有新订单。当前最新是 {latest_id}

" msg += taskList_To_Msg(tasksList) print(f"{taskList_To_Msg(tasksList)}") updated_tasks = [] for task in tasksList: - if task['points'] > config.get('tasks_record').get(str(task['id']),{}).get('points',0):updated_tasks.append(task) + if task['points'] > config.get('tasks_record').get(task['id'],{}).get('points',0):updated_tasks.append(task) if updated_tasks: - msg += f"#### 有新任务点\n" - msg += updated_Tasks_To_Msg(tasksList,config) - print(f"{updated_Tasks_To_Msg(tasksList,config)}") - for task in tasksList:config['tasks_record'][str(task['id'])] = task - sendMsg(config, msg) + msg += f"

有新任务点

" + msg += updated_Tasks_To_Msg(updated_tasks,config) + print(f"{updated_Tasks_To_Msg(updated_tasks,config)}") + for task in tasksList:config['tasks_record'][task['id']] = task + if latest_id > config['latest_id'] or updated_tasks:sendMsg(config, msg) saveConfig(config) print(f"{timeStamp_To_dateTime(time.time())}\t当前最新{latest_id}...\r",end='') else: