返回列表

xiaokeer-python

Python 工具集微服务项目,整合音频处理、视频处理、Android 控制、Windows 自动化等多种实用功能。

PythonFlaskFFmpegOpenCVADBWindows API

项目简介

xiaokeer-python 是一个 Python 工具集微服务项目,定位为个人效率工具箱。项目通过 Flask 提供 RESTful API 服务,整合了音频处理、视频处理、Android 设备控制、Windows 系统自动化、文本处理、游戏自动化等多种实用功能。采用模块化设计,每个功能领域独立成目录,便于维护和扩展。

主要特性

  • 🎵 音频处理:MP3/WAV 转换、合并、静音生成、流式大文件处理
  • 🎬 视频处理:视频帧提取、自定义帧率导出
  • 📱 Android 控制:ADB 设备管理、照片批量下载、剪贴板同步
  • 🖥️ Windows 自动化:输入法切换、大文件扫描、桌面整理
  • 🎮 游戏自动化:屏幕识别、驱动级键鼠模拟
  • 📝 文本处理:智能聚类分析、文本分割

技术栈

类别技术
Web 框架Flask
音频处理pydub, soundfile, FFmpeg
视频/图像OpenCV, pyautogui
机器学习scikit-learn (TF-IDF, DBSCAN)
Windows APIwin32api, ctypes, interception
移动设备ADB
Web 自动化Selenium, BeautifulSoup

技术亮点

亮点一:高性能音频处理

使用 FFmpeg 替代 pydub 进行转换,性能提升显著:

# FFmpeg 多线程加速转换
cmd = [
    "ffmpeg",
    "-threads", "0",  # 自动使用所有 CPU 核心
    "-c:a", "libmp3lame",
    "-b:a", "320k",
]

亮点二:流式大文件处理

使用 soundfile 流式读取,支持合并超大音频文件:

# 流式合并避免内存溢出
for bl in sf.blocks(path, blocksize=blocksize):
    fout.write(bl)

优势

  • 自动检测格式一致性,跳过不匹配的文件
  • 支持重采样统一音频格式

亮点三:驱动级输入模拟

使用 interception 库实现驱动级键鼠模拟,可绕过游戏检测:

import interception
interception.move_relative(100, 200)
interception.click()

亮点四:DPI 感知的分辨率获取

正确处理 Windows DPI 缩放,获取真实物理像素分辨率:

# Per-Monitor DPI Aware V2
shcore.SetProcessDpiAwareness(2)
width = user32.GetSystemMetrics(0)

亮点五:安卓 12+ 剪贴板 API

支持新版安卓剪贴板 API:

# 新版安卓剪贴板命令
cmd = ["adb", "-s", device_id, "shell", f"cmd clipboard set \"{text}\""]

亮点六:智能文本聚类

使用 TF-IDF + DBSCAN 进行告警文本聚类:

# 字符级 n-gram 向量化
vectorizer = TfidfVectorizer(analyzer='char', ngram_range=(2, 4))
db = DBSCAN(eps=0.5, min_samples=1, metric='precomputed')

应用场景:自动发现相似告警分组,减少告警噪音

相关链接