Python游戏水平测试辅助系统2

python

#!/usr/bin/env python3

-*- coding: utf-8 -*-

"""

电竞教练辅助系统 - 完整版(适配真实LCU字段)

功能:加密狗绑定 → 游戏检测 → 环形录屏 → 事件检测 → 推送

"""

import os

import sys

import time

import json

import threading

import subprocess

import hashlib

import tempfile

import re

from datetime import datetime

from pathlib import Path

from collections import deque

from dataclasses import dataclass, field

from typing import List, Dict, Optional, Tuple, Callable

import requests

import win32com.client

import pythoncom

==================== 配置区 ====================

CONFIG = {

----- 加密狗 -----

"DONGLE_VID": 0x1234,

"DONGLE_PID": 0x5678,

"DONGLE_SERIAL": "YOUR_SERIAL",

----- 录屏 -----

"SCREEN_FPS": 30,

"SCREEN_RESOLUTION": (1920, 1080),

"BUFFER_SECONDS": 30,

"RECORD_DIR": "./recordings",

----- 游戏检测 -----

"LOL_PROCESS_NAMES": "League of Legends.exe", "LeagueClient.exe",

----- 暴击检测(基于真实字段)-----

"CRITICAL_STRIKE_THRESHOLD": 2.5, # 次/秒,连续3秒内超过2.5次触发

"CRITICAL_WINDOW": 3.0,

"MIN_CRIT_COUNT": 3, # 窗口内至少3次暴击才触发

----- 成功率阈值 -----

"SUCCESS_RATE_THRESHOLD": 0.3,

----- 推送 -----

"WECHAT_WEBHOOK": "",

"QQ_EMAIL": "",

"SMTP_PASSWORD": "",

"TARGET_EMAIL": "",

----- 防重复 -----

"EVENT_COOLDOWN": 10, # 同类事件10秒内不重复触发

}

==================== 工具函数 ====================

def get_lcu_credentials() -> TupleOptional\[str, Optionalstr]:

"""从进程命令行获取LCU端口和Token"""

try:

result = subprocess.run(

'wmic', 'process', 'where', 'name="LeagueClientUx.exe"', 'get', 'commandline',

capture_output=True, text=True, creationflags=subprocess.CREATE_NO_WINDOW

)

for line in result.stdout.split('\n'):

port_match = re.search(r'--app-port=(\d+)', line)

token_match = re.search(r'--remoting-auth-token=(\\w-+)', line)

if port_match and token_match:

return port_match.group(1), token_match.group(1)

except:

pass

return None, None

相关推荐
岁月宁静9 分钟前
什么是 Agent:从"会聊天"到"会做事"
人工智能·python
岁月宁静27 分钟前
AI 应用开发工程师简历怎么写:HR 初筛、技术复筛、面试追问,三道关卡各看什么?
人工智能·python·面试
来让爷抱一个1 小时前
Python 异步里混用同步库,事件循环被卡住的全过程
开发语言·python
小肝一下3 小时前
3.基础语法(3)
python
深蓝AI3 小时前
Python 子进程树:父进程被杀后,孙进程为何还在跑?
python
心祭丫丫4 小时前
【每天一个 Python 小案例17】Python 实现通讯录
开发语言·人工智能·笔记·python·学习
爱你真是太好了4 小时前
Skill 索引瘦身与渐进加载
python
贾公子4 小时前
检测链路的容量规划——用 Little's Law 算清 QPS、并发与积压
后端·python
露天赏雪4 小时前
第3篇:Sentinel熔断降级实战:大模型接口抖动时的服务兜底方案
java·开发语言·人工智能·spring boot·spring·servlet·sentinel
天天被压力4 小时前
【A股分钟级高频数据完全手册 #06】北交所分钟级数据接口:京市股票Pro版最新分时
java·人工智能·python