使用 PyWinAuto 返回所有桌面 windows
Returning all desktop windows with PyWinAuto
我正在尝试使用 PyAutoWin 从我的机器 return 全部 windows。最终目标是稍后将此列表缩小到 windows 的一个子集,以使用多种方法实现自动化(调整大小和执行抓取操作)。
但是我在最基本的任务上失败了:return全部windows。我的代码是:
import pywinauto
print(pywinauto.findwindows.enum_windows())
并出现此错误:
Traceback (most recent call last):
File "app.py", line 4, in <module>
print(pywinauto.findwindows.enum_windows())
File "C:\Users\*\.virtualenvs\scraper-j58Iv-wO\lib\site-packages\pywinauto\findwindows.py", line 368, in enum_windows
win32functions.EnumWindows(proc, 0)
ctypes.ArgumentError: argument 1: <class 'TypeError'>: expected WinFunctionType instance instead of WinFunctionType
我尝试实例化 Desktop() 对象并将其传递给 enum_windows() 方法,但它不接受参数。
非常感谢任何帮助!
此致
正确的做法:
from pywinauto import Desktop
top_windows = Desktop(backend="uia").windows() # or backend="win32" by default
# walk the returned list of wrappers
for w in top_windows:
print(w.window_text())
我正在尝试使用 PyAutoWin 从我的机器 return 全部 windows。最终目标是稍后将此列表缩小到 windows 的一个子集,以使用多种方法实现自动化(调整大小和执行抓取操作)。
但是我在最基本的任务上失败了:return全部windows。我的代码是:
import pywinauto
print(pywinauto.findwindows.enum_windows())
并出现此错误:
Traceback (most recent call last):
File "app.py", line 4, in <module>
print(pywinauto.findwindows.enum_windows())
File "C:\Users\*\.virtualenvs\scraper-j58Iv-wO\lib\site-packages\pywinauto\findwindows.py", line 368, in enum_windows
win32functions.EnumWindows(proc, 0)
ctypes.ArgumentError: argument 1: <class 'TypeError'>: expected WinFunctionType instance instead of WinFunctionType
我尝试实例化 Desktop() 对象并将其传递给 enum_windows() 方法,但它不接受参数。
非常感谢任何帮助!
此致
正确的做法:
from pywinauto import Desktop
top_windows = Desktop(backend="uia").windows() # or backend="win32" by default
# walk the returned list of wrappers
for w in top_windows:
print(w.window_text())