前提准备
什么是游戏自动化?
游戏自动化是指通过对游戏的界面结构的解析或界面图像的处理与识别,再模拟人工对软件进行的各种操作,从而实现自动化,达到解放双手,节约时间,提高效率的目标。
在本教程中,我们要先实现自动刷快手这个功能,再实现一个叫《豆腐女孩》的自动游戏脚本。通过图像的处理,通过轮廓识别出图像中的目标,计算出要操作的位置或时间,再通过模拟点击或划动的方式,实现对手机的自动化操作。
为什么使用模拟器?
因为通过图像的处理和识别,无论真机还是模拟器,解决方案和实现思路都是一致的,为了方便学员构造环境,本教程使用运行在 Windows 下的模拟器进行演示。
模拟器怎么下载安装?
进入雷电模拟器官方网站:雷电模拟器官网_安卓模拟器_手游模拟器下载 ,点击模拟器下载按钮,下载完成安装后并打开待用。
快手极速版怎么下载安装?
https://z4gvregzdz.feishu.cn/file/boxcnm4ZYHsEDRO5eWIKUfoEXxc 下载后把 apk 文件拖入到模拟器窗口中就会自动安装。
游戏怎么下载安装?
https://z4gvregzdz.feishu.cn/file/boxcnBPgwu80WEvWHMeMWsMr0Jd 下载后把 apk 文件拖入到模拟器窗口中就会自动安装。
窗口与截图
什么是pywin32库?
pywin32是一个第三方模块库,主要的作用是方便python开发者快速调用windows API的一个模块库。
同时pywin32也是绝大部分windows上第三方python模块库的前提,比如wmi,如果没有安装pywin32是无法正常使用wmi这个三方模块库的。
安装pywin32
由于pywin32是第三方模块库,Python并没有自带,所以我们使用之前必须先按照,安装也很简单,只需要再pycharm下方终端 (Terminal)窗口中输入pip install pywin32 回车就可以自动下载安装了。
看到success这样的字样则是说明安装成功了。
如果你不放心,还可以通过 pip list 可以看到pywin32是否已经安装成功了
pywin32提供的模块
Pywin32提供的模块有很多,常用的几个如下:
- win32api 提供了常用的用户API函数
- win32gui 提供了有关windows用户界面图形操作的API函数
- win32con 提供了定义windows Api内的宏
- win32clipboard 提供了有关粘贴板的API函数
- win32console 提供了有关控制台的API函数
- win32service 提供了有关服务操作的API函数
- win32file 提供了有关文件操作的API函数
我们平时最常用的的模块有3个, win32api, win32gui,win32con,下面我们就导入 win32api,win32con这两个模块写一个简单的弹出框,顺便验证下我们pywin32是否安装成功了。 上代码:
import win32api
import win32con
win32api.MessageBox(0, "我是渣男教父", "我是标题", win32con.MB_OK | win32con.MB_ICONWARNING)
运行下看看:
什么是窗口句柄?
这里我们要先说下句柄的概念,通俗点说句柄就是窗口的身份证号,是一串整数。举个栗子,你有你自己的身份证号,一报身份证号,你应该知道是你了。你也有名字,但是大家都知道名字并不是唯一的,你可以叫张三,别人也可以叫张三,而且没有数字来得方便。所以,窗口句柄就相当于身份证号,每个窗口都有一个唯一编号, 操作系统用这个编号来发送消息。这就是操作系统的消息机制。
获取到窗口句柄,我们就可以通过这个句柄对窗口进行操作了。
查找窗口句柄
pywin32是如何查找窗口句柄的,这里我们用到了win32gui模块,以及模块的FindWindow方





159

被折叠的 条评论
为什么被折叠?



