我正在尝试使用Python自动化日常工作。使用win32gui库我已经能够将光标放在一个位置,单击和发送键。在此任务期间,会弹出若干消息/对话框,询问是或否。我希望能够在消息框中阅读该问题,但不知道我将如何处理它。 感谢
答案 0 :(得分:1)
为了给您一种可能性,您可以通过发送带有sendkeys的Ctrl-C
同时将焦点放在对话框上,将对话框的全部内容复制到剪贴板。剪贴板的内容通常如下所示:
[Window Title]
Rename
[Content]
If you change a file name extension, the file might become unusable.
Are you sure you want to change it?
[Yes] [No]
来自win32clipboard
库的 pywin32
允许您检索剪贴板的内容,以便您可以解析文本并做出回应,或者做任何您需要做的事情:
import win32con
import win32clipboard
try:
win32clipboard.OpenClipboard()
text = win32clipboard.GetClipboardData(win32con.CF_TEXT)
print(text)
except TypeError:
print('Error: No text on the clipboard!')
finally:
win32clipboard.CloseClipboard()
不幸的是,有些对话框无法像这样复制到剪贴板。我无法告诉您原因,但Windows 7中的“删除确认”对话框就是其中之一。