python自动化工具之pywinauto_python自動化工具之pywinauto(二)

python自動化工具之pywinauto(二)pywinauto的使用——各控件的操作對於常見的窗口程序,需要點點填填的控件有輸入框(Edit)、按鈕(Button)、復選框(CheckBox)、單選框(RadioButton)、下拉列表(ComboBox).關於各個控件的函數方法,可以查閱官網 Methods available to each different control type下面...
摘要由CSDN通过智能技术生成

python自動化工具之pywinauto(二)

pywinauto的使用——各控件的操作

對於常見的窗口程序,需要點點填填的控件有輸入框(Edit)、按鈕(Button)、復選框(CheckBox)、單選框(RadioButton)、下拉列表(ComboBox).

關於各個控件的函數方法,可以查閱官網 Methods available to each different control type

下面結合程序講一下各個控件的用法。

e00c14f7ccb56ef3b1ffcc1ecf3cf23c.png

要進行文件格式轉換,一般需要三步:

1. 選擇源文件

2. 轉換參數配置

3. 選擇輸出文件位置

在這里,就是現在文件名后面的編輯框中填入源文件的位置,然后勾選自動擴幀復選框,然后點擊轉換按鈕,最后會彈出一個另存為的文件對話框來選擇目標文件位置。

目的明確了,接下來就是如何干的問題了。分兩步:

1. 找到控件

2. 操作控件

如何讓程序找到控件呢?

如何匹配控件

最簡單的方法就是通過空間特征進行匹配。窗體也可以看成是一個大控件。匹配窗口的方法除了前面提到的window()方法,還可以通過中括號加窗口名。如:

dlg_spec = app.window(title=r'EXE/EXE 轉 MP4') # 1

dlg_spec = app[r'EXE/EXE 轉 MP4'] # 2

除了title,還可以使用class或者title+class或者相近的text和類來匹配控件。

另外一種方法就是我們知道了這個程序的層次結構,然后類似尋到DOM元素一樣一層一層的匹配。

那么如何找到這個層次結構呢。pywinauto提供了print_control_identifiers()函數來顯示該窗體下所有控件的結構。

dlg_spec = app[r'EXE/EXE 轉 MP4']

dlg_spec.print_control_identifiers()

輸出如下:

Control Identifiers:

TEXE2FLVForm - 'EXE/EXE 轉 MP4' (L202, T55, R496, B562)

['EXE/EXE 轉 MP4TEXE2FLVForm', 'TEXE2FLVForm', 'EXE/EXE 轉 MP4']

child_window(title="EXE/EXE 轉 MP4", class_name="TEXE2FLVForm")

|

| TTrackBar - '' (L273, T189, R470, B204)

| ['TTrackBar', '下載安裝相關視頻編碼器TTrackBar']

| child_window(class_name="TTrackBar")

|

| TGroupBox - '圖像縮小輸出時處理方法' (L212, T460, R483, B522)

| ['圖像縮小輸出時處理方法', 'TGroupBox', '圖像縮小輸出時處理方法TGroupBox', 'TGroupBox0', 'TGroupBox1']

| child_window(title="圖像縮小輸出時處理方法", class_name="TGroupBox")

| |

| | RadioButton - '部分畫面鼠標自動跟隨(動態顯示光標附近圖像)' (L232, T501, R470, B515)

| | ['RadioButton', '部分畫面鼠標自動跟隨(動態顯示光標附近圖像)RadioButton', 'RadioButton1', '部分畫面鼠標自動跟隨(動態顯示光標附近圖像)', 'RadioButton0']

| | child_window(title="部分畫面鼠標自動跟隨(動態顯示光標附近圖像)", class_name="TRadioButton"

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值