Pyhton键鼠自动化是纯娱乐功能,由于是单机操作,基本不具备互联网级别商业价值,商业价值较低。
基本介绍
基于pyautogui、pyperclip、keyboard可以用来实现键鼠自动化。控制的是键盘鼠标、不是浏览器,所以可以实现非浏览器的自动化操作。浏览器上可以操作的系统如果相使用自动化,当然是Drisssion更优秀,更精准,功能更强大。但是有很多内部系统嵌套浏览器的exe、游戏之流就无法使用。
对与浏览器自动化来说,虽然Drisssion更优秀,但是如果是行业外的人,反而使用Pyhton键鼠自动化进行设计开发会更容易。因为甚至说不需要学习xpath,css之类的定位方法。可以直接使用snipaste来找到屏幕上需要自动化的点位进行定位。(snipaste F1从左上角开始点击,移动到目标点位会显示 x y 坐标。)
可以干什么?
第一个做PC端简单的原神脚本、崩铁脚本,由于没有修改游戏数据,模拟的只是键鼠操作,是安全不会被封的。所做的只是将重复操作一键处理了。脚本支持显示器尺寸识别。说人话就是,一个脚本支持多台电脑使用。显示器2k、4k、1k都能用。需要换设备使用可以考虑将代码打包成exe。可以换个喜欢的图片做成exe文件每次双击使用。还支持图像识别功能
游戏脚本
原神脚本 崩铁脚本 LOL连招脚本、PUBG脚本等 (非外挂)下面展示一些功能,投桃报李,各位看官可以自行设想一些新的功能。
过剧情(非外挂跳过剧情,类似胡桃工具箱鼠标连点,但是不需要手动控制鼠标位置。可以自定义比如 ctrl + 1 按键触发 自动连点对话按键位置处过剧情,自定义空格键取消自动连点。原神 崩铁通用,崩铁好像要加连点空格键吧具体不记得了。)
真一键派遣(从对话到结束一键完成所有派遣,在原神没有枫丹后期更新了个这个比较捞的一键派遣之前是非常好用的,现在就没那么大用处了。)
连点F真自动拾取(电脑端操作比较方便,但是拾取没有手机端的一键拾取,可自定义实现)
传送优化 (之前设置过ctrl w 完成点击操作+点击传送按钮操作,因为传送按钮会变 ctrl s ctrl x是点击传送按钮的另外几个位置 ,这也是之前没有做图像识别优化,理论上还是可以优化的,比如说识别多个传送点位选择最上面那一个。 可参考某站视频 原神 跑图 锄地 lua脚本 罗技宏 分享https://www.bilibili.com/video/BV1cN41167hy/?buvid=XX639426DE3FC1D613A0F2C2250985F418E27
圣遗物强化优化(在原神没有枫丹后期更新了前是非常好用的,现在已经没有用了。可参考某站视频 原神 跑图 锄地 lua脚本 罗技宏 分享https://www.bilibili.com/video/BV1cN41167hy/?buvid=XX639426DE3FC1D613A0F2C2250985F418E27
自动行走模式 (小号开图用,现在大部分人也不玩小号了,需要设置某个按键规则触发模拟按压w,另一个按键规则触发模拟松开w)
战斗连招自动化(LOL各种连招,用代码打出非人操作,PUBG压枪,原神可以让自己的普通胡桃变成杀神胡桃,dps大量提升。不过现在原神用处不大了,龙芙仆闲都是主打一个降低操作难度,火神就是新版龙王,目前原神新卡普遍在有意识降低操作难度,让氪金提高dps。)
非人抽搐操作 (很多视频博主喜欢用的人物小碎步走路,还可以完成神里凌华和莫娜的无体力抽搐快速过海操作,按压非常短时间就松开,不断重复)
崩铁一键完成每日委托、刷本。
工作脚本
可以将工作中需要重复点击的操作给包场了,适配各种职场牛马。
比如说 你是一个房地产中介牛马。你每天需要使用产地产的saas系统,你需要完成录入房源的操作,有很多地方都是必填项都要点,每天都要点很多次,反复输入很多不重要的数据,花很多时间,这时候你就可以自己写脚本把不重要的地方、自动化完成,从而实现非开发人员优化公司内部saas系统的情况。
再比如说 你是一个互联网牛马,最近需要填写工时,项目、项目详情,然后需要点很多个乱八七糟的东西,你不想自己点想敷衍一下,就可以制作工作脚本完成。
再比如说 你是一个文员牛马,你想要自定义一些复制粘贴、打开特定软件的操作。你还是可以自行制作让自己最满意的工作脚本。
再比如说 你是一个设计院牛马,你在AutoCAD 中复制了两张桌子,你想要一键调整桌子朝向。完成一些AutoCAD中没有的快捷键。
如果是浏览器上能打开的网页自动化,拽神当然是功能最强大,对开发人员开发最快的。但是对非开发人员来说,Pyhton键鼠自动化 反而开发更快。
而本地exe的saas系统,主要是为了反爬,一般就用不了拽神。当然以上两种自动化,爬虫逆向成功后请求处理才是速度最快最方便的。
而本地需求,快捷复制粘贴、鼠标连点、办公软件中自定义键鼠快捷键就和拽神、协议无关了。
实现代码
简单的操作,使用起来也非常简单,没学过python也能直接上手。
封装一下pyautogui的最简单的三个常用功能,pyautogui不能直接写中文,如果想要使用pyautogui打字,可以配合pyperclip使用剪切板复制中文,再使用pyautogui进行粘贴操作。
move用来移动鼠标,完成鼠标悬停类似操作,click完成点击操作,都是传入坐标点。write完成打字操作(实际上是复制粘贴),传入需要输入的字符串。
import pyautogui
import pyperclipdef write(word):
pyperclip.copy(word)
pyautogui.hotkey('ctrl', 'v')def click(x, y):
pyautogui.click(x, y)def move(x, y):
pyautogui.moveTo(x, y)
keyboard.add_hotkey实现监听功能(就是输入什么快捷键触发脚本操作。第一个参数输入自定义的快捷键,第二个参数是传入函数,函数会在监听到时进行运行。比如函数里可以写click 某个点。)
while 1:
try:
keyboard.add_hotkey('ctrl+w', fuc1)
keyboard.add_hotkey('ctrl+s', fuc2)
keyboard.add_hotkey('ctrl+d', fuc3)
keyboard.add_hotkey('ctrl+`', fuc4)
keyboard.add_hotkey('ctrl+1', fuc5)
keyboard.add_hotkey('ctrl+-', fuc6)
keyboard.add_hotkey('ctrl+6', fuc7)
keyboard.wait()
except:
print("哈哈")
原神 自动行走模式 使用*键退出
def neverstop():
while 1:
if keyboard.is_pressed('*'):
keyboard.release('w')
return
keyboard.press('w')
sleep(0.1)
原神过剧情(2k) 使用空格键退出
def change1():
while 1:
if keyboard.is_pressed('space'):
print('sucess')
break
print(123 * 4643)
pyautogui.moveTo(x=1985, y=1067)
pyautogui.click()
sleep(0.1)
原神角色抽搐(常见博主的胡桃) 这个是w方向抽,可以自定义wasd抽。
def change4():
while 1:
if keyboard.is_pressed('x'):
print('sucess')
break
sleep(0.02)
keyboard.press('w')
keyboard.release('w')
屏幕尺寸(可以通过这个方法判断屏幕尺寸。判断屏幕尺寸,从而调整点击坐标。)
pyautogui.size().width == 2560:
pyautogui.size().width == 1920:
pyautogui.size().width == 3840:
图像识别示例
返回图像识别点位中间位置,方便后续操作。可以加参数 confidence
配置匹配的成功率阈值
image_path = 'beautiful_women.png'
location = pyautogui.locateCenterOnScreen(image_path)
print(location)
if location:
x, y, width, height = location
click(x, y)
else:
print("识别图片失败")