python使用笔记:pyautogui自动化控制鼠标和键盘

您所在的位置:网站首页 python控制鼠标点击某个坐标 python使用笔记:pyautogui自动化控制鼠标和键盘

python使用笔记:pyautogui自动化控制鼠标和键盘

2023-07-27 23:48| 来源: 网络整理| 查看: 265

标题 安装获取当前屏幕分辨率pyautogui鼠标操作获取/移动鼠标位置鼠标点击鼠标拖拽移动后按下/松开滚轮 pyautogui键盘操作提示信息alert 弹窗option 选择框password 密码输入框prompt 数据输入框 屏幕截图并保存屏幕查找图片位置并获取中间点保护措施

安装

pip3 install pyautogui

获取当前屏幕分辨率 import pyautogui # 获取当前屏幕分辨率 screenWidth, screenHeight = pyautogui.size() print(screenWidth) print(screenHeight)

在这里插入图片描述

pyautogui鼠标操作 获取/移动鼠标位置 import pyautogui # 获取当前屏幕分辨率 screenWidth, screenHeight = pyautogui.size() # 获取当前鼠标位置 currentMouseX, currentMouseY = pyautogui.position() print(currentMouseX) print(currentMouseY) # 5秒钟鼠标从当前位置移动到坐标为100,100的位置 pyautogui.moveTo(100, 100,5) #鼠标立即移到屏幕中央 pyautogui.moveTo(screenWidth / 2, screenHeight / 2) #5秒钟鼠标从当前位置向下移动100,向右移动100 pyautogui.moveRel(xOffset=100, yOffset=100,duration=5) # 用缓动/渐变函数让鼠标2秒后移动到(500,500)位置 pyautogui.moveTo(x=500, y=500, duration=2, tween=pyautogui.easeInOutQuad) 鼠标点击 import pyautogui # 函数参数 # x # y # clicks 点击次数 # interval点击之间的间隔 # button 'left', 'middle', 'right' 对应鼠标 左 中 右或者取值(1, 2, or 3) # tween 渐变函数 pyautogui.click(x=None, y=None, clicks=1, interval=0.0, button='left', duration=0.0, tween=pyautogui.linear) # 鼠标当前位置0间隔双击 pyautogui.doubleClick(x=None, y=None, interval=0.0, button='left', duration=0.0, tween=pyautogui.linear) # 鼠标当前位置3击 pyautogui.tripleClick(x=None, y=None, interval=0.0, button='left', duration=0.0, tween=pyautogui.linear) #右击 pyautogui.rightClick() #中击 pyautogui.middleClick() 鼠标拖拽 import pyautogui #3秒鼠标按下左键从当前位置拖拽到400,500 pyautogui.dragTo(x=400, y=500, duration=3,button='left') #3秒鼠标按下左键从当前位置拖拽相对移动100,100 pyautogui.dragRel(xOffset=100,yOffset=100,duration=3,button='left',mouseDownUp=True) 移动后按下/松开 import pyautogui #鼠标移动到x=1796, y=778位置按下 pyautogui.mouseDown(x=1796, y=778, button='left') #鼠标移动到x=2745, y=778位置松开(与mouseDown组合使用选中) pyautogui.mouseUp(x=2745, y=778, button='left',duration=5) 滚轮 import pyautogui #鼠标当前位置滚轮滚动500距离 pyautogui.scroll(500) #鼠标水平滚动(Linux) pyautogui.hscroll(500) #鼠标左右滚动(Linux) pyautogui.vscroll(500) pyautogui键盘操作 import pyautogui #模拟输入信息,每个输入字母间隔0.5秒 pyautogui.typewrite(message='Hello world!',interval=0.5) #点击ESC pyautogui.press('esc') # 按住shift键 pyautogui.keyDown('shift') # 放开shift键 pyautogui.keyUp('shift') # 模拟组合热键 pyautogui.hotkey('ctrl', 'c') #点击windows键 pyautogui.press('winleft')

按键支持

按键说明enter(或return 或 \n)回车escESC键shiftleft, shiftright左右SHIFT键altleft, altright左右ALT键ctrlleft, ctrlright左右CTRL键tab (\t)TAB键backspace, deleteBACKSPACE 、DELETE键pageup, pagedownPAGE UP 和 PAGE DOWN键home, endHOME 和 END键up, down, left,right箭头键f1, f2, f3….F1…….F12键volumemute, volumedown,volumeup有些键盘没有pausePAUSE键capslock, numlock,scrolllockCAPS LOCK, NUM LOCK, 和 SCROLLLOCK 键insertINS或INSERT键printscreenPRTSC 或 PRINT SCREEN键winleft, winrightWin键commandMac OS X command键 提示信息 alert 弹窗 import pyautogui pyautogui.alert(text='This is an alert box.', title='Test')

在这里插入图片描述

option 选择框 import pyautogui #pyautogui.confirm('Shall I proceed?') pyautogui.confirm('Enter option.', buttons=['A', 'B', 'C'])

在这里插入图片描述

password 密码输入框

输入数据会被隐藏,以“*”代替显示

import pyautogui a = pyautogui.password('Enter password (text will be hidden)') print(a)

在这里插入图片描述

prompt 数据输入框 import pyautogui a = pyautogui.prompt('input message') print(a)

在这里插入图片描述

屏幕截图并保存

需要安装Pillow库

import pyautogui img_path = r'D:\log\one.png' im1 = pyautogui.screenshot() im1.save('my_screenshot.png') im2 = pyautogui.screenshot('my_screenshot2.png') #只截取部分区域 im = pyautogui.screenshot(region=(0,0, 300, 400)) im.save(img_path) 屏幕查找图片位置并获取中间点 import pyautogui #在当前屏幕中查找指定图片(图片需要由系统截图功能截取的图) coords = pyautogui.locateOnScreen('folder.png') #获取定位到的图中间点坐标 x,y=pyautogui.center(coords) #右击该坐标点 pyautogui.rightClick(x,y) 保护措施 import pyautogui #保护措施,把鼠标移动到屏幕左上角能够强制停止pyautogui,避免失控。 pyautogui.FAILSAFE = True #为所有的PyAutoGUI函数增加延迟,即执行完一个函数等待0.5秒再执行下一个。默认延迟时间是0.1秒。 pyautogui.PAUSE = 0.5

参考: https://blog.csdn.net/weixin_43430036/article/details/84650938 https://www.cnblogs.com/dcb3688/p/4607980.html



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3