Python: 捕获正在运行的CMD窗口内容 最近需要捕获已经在运行的CMD窗口内容,并且需要根据指定输出内容来判断下一步的行动(输入指定内容)。
通过inspect.exe来获取CMD窗口Name信息 通过uiautomation捕获到CMD窗口 通过输入Ctrl+A后Ctril+C来复制整个CMD窗口内容 然后获取到剪切板中复制的内容后进行判断 基本代码如下:
from uiautomation import DocumentControl
import clipboard
# 获取CMD窗口
window = DocumentControl(searchDepth=3, Name='Text Area')
# 测试在CMD里面删除某个文件
window.SendKeys('del /p test.txt')
window.SendKeys('{Enter}')
# Ctrl A / C 全选复制
window.SendKeys('{Ctrl}A')
window.SendKeys('{Ctrl}C')
# 获取剪切板里面的复制内容
result = clipboard.paste()
print(result)
# 判断复制内容是否是以特定内容结尾或者特定字符
if result.endswith('Delete (Y/N)?'):
# 输入内容
window.SendKeys('n')
window.SendKeys('{Enter}')
window.Close()
# 执行完成
print('finished')
else:
print('No such value,not complete')
|