pyautogui自动化控制鼠标和键盘操作

摘要:
皮塔圭。moveTo#鼠标左键单击一次#pyautogui。click()#x#y#clicks#interval单击次数#按钮“left”、“middle”、“right”之间的间隔对应于鼠标的左中右或梯度函数#pyautogui之间的值。单击#鼠标相对移动,向下移动#pyautogui。移动Repyautogui。moveRel#鼠标的当前位置0间隔双击#pyautogui。双击()pyautogui。doubleClick#鼠标的当前位置3单击#pyautogui。tripleClick()pyautogui。tripleClick#右键单击pyautogui。rightClick()#中键单击pyautogui。middle Click()#使用点动/斜坡功能将鼠标移动到位置#使用推/缓动功能移动鼠标超过2秒。pyautogui。moveTo#拖动鼠标pyautogui。dragTo#相对于pyautogui拖动鼠标。dragRel#将鼠标移动到x=1796,y=778,按pyautogui。mouseDown#将鼠标移动到x=2745,Y=778位置,释放pyautogui。mouseUp#鼠标当前位置滚动pyautogui。scroll()#鼠标水平滚动pyautogui。hscroll()#鼠标左右滚动pyautogui。vscroll()pyautogui键盘操作示例#模拟输入信息pyautogui。打字(消息=“你好!

pyautogui自动化控制鼠标和键盘操作


PyAutoGUI是一个纯Python的GUI自动化工具,其目的是可以用程序自动控制鼠标和键盘操作,多平台支持(Windows,OS X,Linux)。

安装
pip3 install pyautogui
pyautogui鼠标操作样例
import pyautogui

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

# 获取当前鼠标位置
currentMouseX, currentMouseY = pyautogui.position()

# 2秒钟鼠标移动坐标为100,100位置  绝对移动
#pyautogui.moveTo(100, 100,2)
pyautogui.moveTo(x=100, y=100,duration=2, tween=pyautogui.linear)

#鼠标移到屏幕中央。
pyautogui.moveTo(screenWidth / 2, screenHeight / 2)

# 鼠标左击一次
#pyautogui.click()
# 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)

# 鼠标相对移动 ,向下移动
#pyautogui.moveRel(None, 10)
pyautogui.moveRel(xOffset=None, yOffset=10,duration=0.0, tween=pyautogui.linear)


# 鼠标当前位置0间隔双击
#pyautogui.doubleClick()
pyautogui.doubleClick(x=None, y=None, interval=0.0, button='left', duration=0.0, tween=pyautogui.linear)

# 鼠标当前位置3击
#pyautogui.tripleClick()
pyautogui.tripleClick(x=None, y=None, interval=0.0, button='left', duration=0.0, tween=pyautogui.linear)

#右击
pyautogui.rightClick()

#中击
pyautogui.middleClick()

#  用缓动/渐变函数让鼠标2秒后移动到(500,500)位置
#  use tweening/easing function to move mouse over 2 seconds.
pyautogui.moveTo(x=500, y=500, duration=2, tween=pyautogui.easeInOutQuad)

#鼠标拖拽
pyautogui.dragTo(x=427, y=535, duration=3,button='left')

#鼠标相对拖拽
pyautogui.dragRel(xOffset=100,yOffset=100,duration=,button='left',mouseDownUp=False)

#鼠标移动到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)

#鼠标当前位置滚轮滚动
pyautogui.scroll()
#鼠标水平滚动(Linux)
pyautogui.hscroll()
#鼠标左右滚动(Linux)
pyautogui.vscroll()
pyautogui键盘操作样例
#模拟输入信息
pyautogui.typewrite(message='Hello world!',interval=0.5)
#点击ESC
pyautogui.press('esc')
# 按住shift键
pyautogui.keyDown('shift')
# 放开shift键
pyautogui.keyUp('shift')
# 模拟组合热键
pyautogui.hotkey('ctrl', 'c')
按键支持
按键说明
enter(或return)回车
escESC键
shiftleft, shiftright左右SHIFT键
altleft, altright左右ALT键
ctrlleft, ctrlright左右CTRL键
tab ()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

#pyautogui.alert('This is an alert box.','Test')
pyautogui.alert(text='This is an alert box.', title='Test')

在这里插入图片描述

option

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

在这里插入图片描述

password

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

在这里插入图片描述

prompt

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

在这里插入图片描述

截屏

整个屏幕截图并保存

im1 = pyautogui.screenshot()
im1.save('my_screenshot.png')

im2 = pyautogui.screenshot('my_screenshot2.png')

屏幕查找图片位置并获取中间点

#在当前屏幕中查找指定图片(图片需要由系统截图功能截取的图)
coords = pyautogui.locateOnScreen('folder.png')
#获取定位到的图中间点坐标
x,y=pyautogui.center(coords)
#右击该坐标点
pyautogui.rightClick(x,y)
安全设置
import pyautogui

#保护措施,避免失控
pyautogui.FAILSAFE = True
#为所有的PyAutoGUI函数增加延迟。默认延迟时间是0.1秒。
pyautogui.PAUSE = 0.5

免责声明:文章转载自《pyautogui自动化控制鼠标和键盘操作》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇pipenvDubbo的高可用机制下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

5.1 jQuery基础

1. jquery.com 下载     api.jQuery.com 查看api  important!!! 2. 绑定事件     http://api.jquery.com/category/events/   bind():attach a handler to an event, As of jQuery 1.7, the .on() metho...

JS代码收藏大全

从其他地方找来的,希望对有需要的人带来方便! 1. oncontextmenu="window.event.returnvalue=false" 将彻底屏蔽鼠标右键<table border oncontextmenu=return(false)><td>no</table> 可用于Table 2. <body o...

jQueryEasyUI Messager基本使用

http://www.cnblogs.com/libingql/archive/2011/07/17/2109020.html 一、jQueryEasyUI下载地址 http://www.jeasyui.com/ 二、jQueryEasyUI Messager基本使用 1、$.messager.alert(title, msg, icon, fn) 1&...

android中实现自定义广播

自定义广播分两个步骤:1、发送广播 2、接收广播 一、先看如何接收广播: 我使用的是Android Studio,File->New->Other->Broadcast Receiver,先创建一个广播类,这个创建的类会自动帮我们继承BroadcastReceiver类,接收广播,需要继承这个类 MyReceiver.java packa...

微信小程序之官方UI框架 iView UI的使用

微信小程序之官方UI框架 iView UI的使用一、搭环境      官网:https://weapp.iviewui.com/docs/guide/start 1、到 GitHub 下载 iView Weapp 的代码,将 dist 目录拷贝到自己的项目中。然后按照如下的方式使用组件,以 Button 为例,其它组件在对应的文档页查看: ① 添加需要的组...

WPF知识点全攻略06- WPF逻辑树(Logical Tree)和可视树(Visual Tree)

介绍概念之前,先来分析一段代码: xaml代码如下: <Window x:Class="WpfApp1.MainWindow" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.micros...