pywinauto
Minor Enhancements and
pywinauto 是一組用於自動化 Microsoft Windows GUI 的 Python 模組。最簡單的是,它允許您將滑鼠和鍵盤操作發送到視窗對話框和控件,但它支援更複雜的操作,例如獲取文字資料。
支援的底層技術:Win32 API( backend="win32"
;預設使用)、MS UI Automation( backend="uia"
)。使用者輸入仿真模組mouse
和keyboard
可在 Windows 和 Linux 上運作。
只需為儲存庫加註星標或進行捐贈即可。
您的幫助很有價值,因為這對我們所有人來說都是一個業餘愛好項目:我們在下班時間進行新功能開發。
pip install -U pywinauto
(依賴項將自動安裝)它很簡單,並且產生的腳本非常可讀。有多簡單?
from pywinauto . application import Application
app = Application (). start ( "notepad.exe" )
app . UntitledNotepad . menu_select ( "Help->About Notepad" )
app . AboutNotepad . OK . click ()
app . UntitledNotepad . Edit . type_keys ( "pywinauto Works!" , with_spaces = True )
explorer.exe
的更詳細範例:
from pywinauto import Desktop , Application
Application (). start ( 'explorer.exe "C: \ Program Files"' )
# connect to another process spawned by explorer.exe
# Note: make sure the script is running as Administrator!
app = Application ( backend = "uia" ). connect ( path = "explorer.exe" , title = "Program Files" )
app . ProgramFiles . set_focus ()
common_files = app . ProgramFiles . ItemsView . get_item ( 'Common Files' )
common_files . right_click_input ()
app . ContextMenu . Properties . invoke ()
# this dialog is open in another process (Desktop object doesn't rely on any process id)
Properties = Desktop ( backend = 'uia' ). Common_Files_Properties
Properties . print_control_identifiers ()
Properties . Cancel . click ()
Properties . wait_not ( 'visible' ) # make sure the dialog is closed
pip install -U Pillow
)以便能夠呼叫capture_as_image()
方法來製作控制項的快照。執行所有測試: python ./pywinauto/unittests/testall.py
非常歡迎請求請求。有關單元測試、編碼約定等的更多詳細信息,請閱讀貢獻指南。
用於本機 Windows GUI 的 Pywinauto 最初由Mark Mc Mahon編寫。 Mark 利用 Python 的力量將許多偉大的想法帶入生活。更多貢獻者受到良好 API 的啟發,以便開發繼續進行。
從 0.6.0 開始 pywinauto 在 BSD 3-clause 許可證下分發。 Pywinauto 0.5.4 及之前版本在 LGPL v2.1 或更高版本下分發。