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')

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM