Python 如何使用Pywinauto单击电报联系人菜单
我想用Pywinauto点击电报中的联系人菜单。 我运行此代码,但出现错误:Python 如何使用Pywinauto单击电报联系人菜单,python,telegram,pywinauto,Python,Telegram,Pywinauto,我想用Pywinauto点击电报中的联系人菜单。 我运行此代码,但出现错误: >>> import pywinauto >>> from pywinauto.application import Application >>> app = Application.start ("C:\Users\Ali\AppData\Roaming\Telegram Desktop\Telegram.exe") >>> app.Teleg
>>> import pywinauto
>>> from pywinauto.application import Application
>>> app = Application.start ("C:\Users\Ali\AppData\Roaming\Telegram Desktop\Telegram.exe")
>>> app.Telegram.MenuSelect ("Contacts")
Traceback (most recent call last):
File "<pyshell#5>", line 1, in <module>
app.Telegram.MenuSelect ("Contacts")
File "C:\Python27\lib\site-packages\pywinauto-0.5.1-py2.7.egg\pywinauto\application.py", line 244, in __getattr__
ctrls = _resolve_control(self.criteria)
File "C:\Python27\lib\site-packages\pywinauto-0.5.1-py2.7.egg\pywinauto\application.py", line 807, in _resolve_control
raise e.original_exception
MatchError: Could not find 'Telegram' in '[]'
>>>
导入pywinauto
>>>从pywinauto.application导入应用程序
>>>app=Application.start(“C:\Users\Ali\AppData\Roaming\Telegram Desktop\Telegram.exe”)
>>>app.Telegram.MenuSelect(“联系人”)
回溯(最近一次呼叫最后一次):
文件“”,第1行,在
app.Telegram.MenuSelect(“联系人”)
文件“C:\Python27\lib\site packages\pywinauto-0.5.1-py2.7.egg\pywinauto\application.py”,第244行,位于\uu getattr__
ctrls=\u解析\u控制(自我标准)
文件“C:\Python27\lib\site packages\pywinauto-0.5.1-py2.7.egg\pywinauto\application.py”,第807行,在\u resolve\u控件中
引发e.U异常
匹配错误:在“[]”中找不到“电报”
>>>
我如何制作这个脚本?
请回答我需要它。
谢谢。这是QT5应用程序。pywinauto目前只支持本机和一些基本的.NET应用程序。也许在未来的UI自动化API支持下(计划是最近的冬天),pywinauto会有所帮助,但现在不行。Inspect.exe(在UIA模式下)可以看到菜单和按钮,但没有任何名称。因此,需要特殊的QT支持,才能使其像本地应用程序一样优雅。如果您需要非常简单的自动化,我建议您只使用一些解决方法,如按
app.Telegram.TypeKeys({ENTER}”)
键,然后通过坐标单击鼠标,如app.Telegram.ClickInput(坐标=(70,20))
。我能找到的唯一一个用于QT自动化的开源工具是funq:这个项目很年轻,但很有趣。