700字范文,内容丰富有趣,生活中的好帮手!
700字范文 > python使用笔记:pyautogui自动化控制鼠标和键盘

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

时间:2023-06-22 22:50:05

相关推荐

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

标题

安装获取当前屏幕分辨率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,向右移动100pyautogui.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,500pyautogui.dragTo(x=400, y=500, duration=3,button='left')#3秒鼠标按下左键从当前位置拖拽相对移动100,100pyautogui.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)#点击ESCpyautogui.press('esc')# 按住shift键pyautogui.keyDown('shift')# 放开shift键pyautogui.keyUp('shift')# 模拟组合热键pyautogui.hotkey('ctrl', 'c')#点击windows键pyautogui.press('winleft')

按键支持

提示信息

alert 弹窗

import pyautoguipyautogui.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 pyautoguia = pyautogui.password('Enter password (text will be hidden)')print(a)

prompt 数据输入框

import pyautoguia = pyautogui.prompt('input message')print(a)

屏幕截图并保存

需要安装Pillow库

import pyautoguiimg_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

参考:

/weixin_43430036/article/details/84650938

/dcb3688/p/4607980.html

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。