Python入门(2):续(1)用PyAutoGUI玩转小游戏自动化(实例)
大家好,本次文章主要针对于对Python爬虫(1)中内容的实践[后续]:使用pyautogui完成一些简单小游戏的自动化,大家可以参考本次案例自行去写一些简单代码试验一下,多多创新、发散思维。技术仅用于学习:本技术仅用于 Python 自动化语法学习演示,严禁用于游戏批量挂机、刷取道具、商用代玩等违规操作,请勿违反游戏平台使用规则。
一.详细举例与知识讲解
我们这里以这个4399小游戏举例(萌宝的日常):可熟练掌握pyautogui库中的一些常用命令
如:①pyautogui.moveTo(x=,y=,duration=) ②pyautogui.click() ③pyautogui.sleep(20) ④ pyautogui.mouseDown() ⑤pyautogui.mouseUp()等

操作1. 如上图,我们将要点击开始游戏,必须先要使用.moveTo(x=,y=,duration=)将鼠标移动到【开始游戏】所在的地方,然后使用.click()进行点击操作,这样就可以进行下一步(注意:新手一定要注意顺序哦,不能写反,python代码是从上到下、逐行顺序执行的)

操作2. 当你完成操作1后它会进入上图界面,此时我们不需要任何操作,若将后续的鼠标操作直接写在上两行代码下面,它会直接在上图界面执行,相当于还未到达指定页面代码便已经执行完了,这是不正确的,此时,为了避免这一问题我们引出了.sleep(数值),使用它可以暂停当前操作,意思就是等待这一界面加载完然后继续执行以下代码,数值一般填(1,2,3……):具体看自己需要

操作3. 这步以及后续几步操作与操作1完全一致,运用.moveTo()与.click()即可进入

操作4. 到达这一步后,如图,它需要将奶瓶移动到仪器里,但是注意了!!!这里并不是用.moveTo()就完成了,.moveTo()只移动鼠标,但是它不是我们需要的长按左键移动鼠标,此时要与.mouseDown()搭配使用,先按下鼠标左键再移动鼠标到指定位置
注:.mouseDown() :按下鼠标左键不放
按住移动是解决了,但是现在又有了新的问题,我们也不能把鼠标左键一直按住呀,不然后续任务怎么执行呢:基于这一问题我们又引出了.mouseUp(),它一般与,mouseDown配套使用,再需要松开鼠标左键时使用
注:.mouseUp():抬起松开左键

操作5. 再看上图,这里需要拧开奶瓶,该游戏是通过点击操作完成该部分,大致需要点击6次(具体情况具体分析),为了方便起见,在这里我们可以使用循环,将原本连续六次的pyautogui.click()写成一个循环,如下:(在使用库时不要忘记导入库哦~)
import pyautogui
for i in range(6):
pyautogui.click()
操作总结:展示就到这里了,对于用该库实现基础自动化的方法大致就这些,小游戏后续的操作使用上述内容就能完成,有兴趣的朋友可以自行尝试一下
给大家一个实用小建议:写代码时要注意写上注释哦,防止以后查看的时候看不懂代码或者不知道哪里是干什么的
【注释:#:单行注释
""" 内容 """ : 多行注释(三对双引号)
''' 内容 ''' : 多行注释(三对单引号)
】
二、知识点总结:
一、基础环境
- 安装依赖:
pyautogui、pyperclip - 防失控机制:鼠标快速移到屏幕左上角可紧急终止脚本
- 坐标获取:
pyautogui.position()查看鼠标实时 XY 坐标,定位游戏按钮(当前使用微信剪切板,可自行研究)
二、鼠标核心指令(游戏自动化常用)
- 鼠标移动:
pyautogui.moveTo(x,y,duration=秒数)移动鼠标到指定坐标,duration 控制移动速度 - 单击:
pyautogui.click()快速完成按下 + 松开,适用于游戏点击按钮、选项 - 长按拆分操作
pyautogui.mouseDown():鼠标按下不松开pyautogui.mouseUp():松开鼠标,二者搭配实现拖拽、长按交互
- 延时等待:
pyautogui.sleep(数值)强制暂停对应秒数,适配小游戏动画、加载、交互冷却,防止操作过快失效
三、小游戏实操要点
- 运行脚本前需提前打开并进入游戏界面;
- 所有点击、移动都要配合
sleep预留游戏响应时间; - 拖拽类游戏操作不能只用 click,必须搭配 mouseDown+mouseUp 组合使用。
三、禁止规范说明
- 使用边界禁止: 禁止将 pyautogui 自动化脚本用于批量刷游戏奖励、自动挂机通关、恶意批量操作小游戏等破坏游戏平衡、损害平台运营的行为。
- 使用用途禁止 :禁止利用本套鼠标自动化技术商用牟利、批量生成脚本售卖、对外提供游戏代挂服务。
- 学习红线禁止 :禁止直接复制代码大规模自动化运行各类网页小游戏、网游,仅允许单人本地短时间演示学习操作逻辑。
- 法律与平台禁止 :禁止违反 4399 等游戏平台用户协议,禁止绕过游戏交互限制、破坏游戏正常流程,由此产生的账号封禁、违规追责等后果自行承担。
- 操作安全禁止 :禁止长时间无监控运行自动化脚本,防止鼠标失控、程序卡死占用电脑操作;禁止在重要工作界面运行脚本误操作。
四、后续:下一章会详细讲解一下最基础的知识,大家可以期待一下
大家学习了这章有没有自己尝试一下呢,有什么问题可以在评论问我哟
更多推荐



所有评论(0)