通過 menu().items() 可以獲取當前級次下的選單項,再通過 sub_menu() 判斷是有下級選單項,不斷的遞回,把所有的選單項列印出來,
# -*- coding: UTF8 -*-
from pywinauto import Application
import psutil
def get_pid(name):
'''
作用:根據行程名獲取行程pid
回傳:回傳匹配第一個行程的pid
'''
pids = psutil.process_iter()
for pid in pids:
if(pid.name() == name):
return pid.pid
def list_menu(menu_item, space):
'''
作用:遞回法遍歷選單
'''
for i in menu_item.items():
if(len(i.text()) > 0):
print(space + i.text())
if(i.sub_menu() != None):
list_menu(i.sub_menu(), " " + space)
app = Application().connect(process = get_pid("notepad.exe"))
win = app.window(title_re = "cmd.txt - 記事本")
list_menu(win.menu(), "")
# 選單欄操作
win.menu_select("檔案->頁面設定")
我以記事本來做個示例,效果圖如下:


這是選單欄操作的效果圖演示,我打開的是頁面設定:

喜歡的點個贊?吧!
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/172397.html
標籤:其他
