哪个Python扩展在Windows GUI自动化中对处理设计不佳的UI提供更高的灵活性?

2 投票
2 回答
2688 浏览
提问于 2025-04-17 09:39

我有一个非常复杂(而且设计得很糟糕)的自动拨号应用程序,我需要自动化这个程序,以便一些技术水平较低的用户能够联系客户。

我想试试用Python来实现这个目标,想知道大家在这方面有什么经验。在我查找的过程中,发现了一些适合这种需求的扩展:

我希望能把最终产品打包成一个独立的可执行文件,所以我在寻找一个与pyinstaller兼容的扩展,同时又能处理这个有很多选项卡、复选框、单选按钮和隐藏选项的应用程序——而且这个程序在关闭时也不太能正确保存设置 :( 这个系统运行的是Windows 7。

有没有人尝试过类似的事情,能推荐哪个扩展可以满足这些要求呢?

(需要与pyinstaller和Windows 7兼容,并且能处理复选框、单选按钮等的深入操作。)

2 个回答

0

我对Python了解不多,但Sikuli这个项目听起来非常适合你想做的事情。它是一个使用Python的项目,能够进行图像识别。你可以在这里了解更多信息:http://news.ycombinator.com/item?id=1074469

3

PyWinauto应该能处理这个问题。我曾经用它来自动化一个OpenGL的视频游戏,这个游戏里面有一些按钮之类的东西,但这些不是Windows的控件,所以我只能用鼠标点击。不过对于你的应用程序来说,你应该可以使用它提供的功能来操作Windows的控件。我建议如果可能的话,让pywinauto直接启动拨号器,因为如果不这样做,找到正在运行的应用程序的正确名称会比较困难。

如果这个应用程序不使用Windows的图形界面控件,那么你可以让它点击应用程序的窗口来自动化操作。有一点你需要注意的是,应用程序必须是可见的并且处于焦点状态。所以如果你希望你的应用程序能够与用户互动,你需要在拨号器附近放一个有按钮的窗口。你还需要训练你的用户不要去点击自动拨号器的窗口。

撰写回答