Google Talk、Skype、Yahoo Messenger、AIM 和其它即时通信应用通常使用专
有协议,让其他人很难通过编写 Python 模块与这些程序交互。但即使这些专有协议,也不能阻止你编写GUI 自动化工具。
Google Talk
应用有一个搜索条,让你在输入朋友列表中的用户名并按下回车时,打开一个消息窗口。键盘焦点自动移到那个新的窗口。其他即时通信应用也有类似的方式,来打开新的消息窗口。请编写一个应用程序,向朋友列表中选定的一
组人发出一条通知消息。程序应该能够处理异常情况,比如朋友离线,聊天窗口出现在屏幕上不同的位置,或确认对话框打断输入消息。程序必须使用屏幕快照,指导它的 GUI
交互,并在虚拟按键发送之前采用各种检测方式。
注意 你可能需要建立一些假的测试账户,这样就不会在编写这个程序时,不小心打扰真正的朋友。
18.14.3 玩游戏机器人指南
有一个很不错的指南名为“How to Build a Python Bot That Can Play Web Games”,网址是
http://nostarch.com/automatestuff/。这份指南解释了如何用 Python 创建一个 GUI 自动化程序,玩一个名为 Sushi Go Round 的 Flash
游戏。这个游戏需要点击正确的成分按钮,填写客户的寿司订单。填写无错订单越快,得分就越高。这个任务特别适合 GUI
自动化程序,因为可以作弊得到高分!这份指南包含了本章介绍的许多主题,也涉及PyAutoGUI 的基本图像识别功能。