千家信息网

如何使用Python开发游戏运行脚本实现模拟点击

发表于:2024-11-11 作者:千家信息网编辑
千家信息网最后更新 2024年11月11日,小编给大家分享一下如何使用Python开发游戏运行脚本实现模拟点击,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!一、And
千家信息网最后更新 2024年11月11日如何使用Python开发游戏运行脚本实现模拟点击

小编给大家分享一下如何使用Python开发游戏运行脚本实现模拟点击,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!

一、Android模拟器的选择

  • 目前市面上有很多Android模拟器,比如夜神模拟器、雷电模拟器、腾讯手游助手、以及网易的木木模拟器等,这些模拟器在对手游兼容性和大漠插件的支持方面各有各的优缺点,大家可以根据具体的手游自行斟酌。

  • 这里我选择的是夜神模拟器,选择其他的当然也没问题,因为原理是相同的。在选择好模拟器之后下载安装,安装成功之后打开夜神模拟器,会看到夜神模拟器的主页面,这里我已经修改了夜神模拟器的分辨率为【640*360 / dpi = 240】

二、使用大漠插件对具体的窗口进行绑定

对于Windows系统来说,在桌面上能看到的所有内容,其实都是一个又一个的Windows窗口,Android模拟器也不例外;按照大漠API的说明文档,我们要实现模拟鼠标点击和键盘按键的第一步,就是调用大漠插件的API对具体的窗口进行绑定,过程中有用到一些大漠插件的API(具体API介绍请自行查阅大漠插件的API文档),以下是我们进行窗口绑定的代码:

import win32com.client# 创建大漠实例对象def createDMInstance():   dm = win32com.client.Dispatch('dm.dmsoft')  # 调用大漠插件,获取大漠对象   print("大漠插件版本号:" + dm.ver())  # 输出版本号   return dm# 查找窗口,返回找到的窗口句柄def findWindow(dm, windowClass, windowTitle):   windowHandle = dm.FindWindow(windowClass, windowTitle)   print("找到的窗口句柄 = " + str(windowHandle))  # 输出窗口句柄ID   return windowHandle# 绑定窗口def bindWindow(dm, windowHandle):   isBindSuccess = dm.BindWindow(windowHandle, "normal", "normal", "normal", 0)   print("是否绑定成功 = " + str(isBindSuccess))  # 是否绑定成功   return isBindSuccess  # 是否绑定成功if __name__ == '__main__':   dm = createDMInstance()   windowHandle = findWindow(dm, "", "夜神模拟器")   isBindSuccess = bindWindow(dm, windowHandle)

  • 调用大漠插件的API【FindWindow】找到夜神模拟器的窗口句柄,输出窗口句柄的编号

  • 调用大漠插件的API【BindWindow】对找到的窗口句柄进行绑定,并输出绑定结果

三、进行鼠标模拟

在成功绑定窗口之后,我们就可以对窗口,也就是夜神模拟器为所欲为了!
这里调用大漠插件的API【MoveTo(x, y)】把鼠标移动到具体的坐标点(整个坐标系是以安卓模拟器左上角为原点,向下向右展开),然后再调用【LeftClick()】,这样就成功实现了模拟点击。


可以看到在python运行起来的一瞬间,鼠标自行移动到了x=136,y=161的位置,并触发点击,打开了应用,这样我们就初步实现了鼠标模拟点击的功能。

以上是"如何使用Python开发游戏运行脚本实现模拟点击"这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注行业资讯频道!

0