Files
aiData/Util/DevTools/screenshot_test.py

59 lines
1.6 KiB
Python
Raw Normal View History

2026-01-12 07:49:18 +08:00
# coding=utf-8
import asyncio
import logging
import os
from datetime import datetime
import uiautomator2 as u2
# 配置日志输出
logging.basicConfig(
level=logging.INFO,
format='%(asctime)s - %(name)s - %(levelname)s - %(message)s'
)
logger = logging.getLogger("ScreenshotTool")
async def take_screenshot():
"""
打开微信主界面并拍照(截图)
"""
# 连接设备
d = u2.connect()
# 执行截图
timestamp = datetime.now().strftime("%Y%m%d_%H%M%S")
filename = f"current_{timestamp}.jpg"
# 获取目标目录: 项目根目录下的 Temp/DevTools
project_root = os.path.dirname(os.path.dirname(os.path.dirname(os.path.abspath(__file__))))
target_dir = os.path.join(project_root, "Temp", "DevTools")
os.makedirs(target_dir, exist_ok=True)
filepath = os.path.join(target_dir, filename)
logger.info(f"正在拍照(截图)并保存至: {filepath}")
d.screenshot(filepath)
if os.path.exists(filepath):
logger.info("拍照成功!")
return filepath
else:
logger.error("拍照失败,未找到生成的文件。")
return None
async def main():
filepath = await take_screenshot()
if filepath:
logger.info(f"任务执行完成,截图文件: {filepath}")
else:
logger.error("任务执行失败。")
if __name__ == "__main__":
try:
asyncio.run(main())
except KeyboardInterrupt:
logger.info("程序被用户中断.")
except Exception as e:
logger.exception(f"运行过程中出现异常: {e}")