python编写脚本之pyautogui的安装和使用教程

目录
  • 前言
  • 鼠标
  • 鼠标移动
  • 鼠标点击
  • 鼠标滚动
  • 屏幕处理
  • 键盘输入
  • 提示信息
    • 提示框
    •  选择框
    • 输入密码
    • 输入普通内容
  • 总结

前言

以下是我对python中编写脚本最重要的库之一pyautogui的学习整理,分享给大家希望有所帮助

提示:我在初步使用pyautogui的过程中发现对于谷歌浏览器的click点击失效,其他尚未发现

pyautogui的安装 

可以使用cmd输入pip install pyautogui进行库的安装

鼠标

对鼠标的控制是基于屏幕上的位置的,比如我的电脑的显示分辨率是19201080,也就是从屏幕的左上角开始,水平方向向右代表x,一行中有1920个小像素块,垂直方向向下代表y,一列中有1080个像素块,就像一个大坐标系,只不过整个屏幕中只有第一象限

使用size获取屏幕的显示分辨率

示例如下:

from pyautogui import size
x,y=size()
print(x,y)

 使用position获取鼠标当前位置

from pyautogui import position
x,y=position()
print(x,y)

鼠标移动

moveTo:把鼠标移动到屏幕的某个位置

上面可知左上角的坐标是(0,0),右下角就是(1920,1080),示例如下

from pyautogui import moveTo
moveTo(1684,1059,duration=3)#1684和1059是要移动到的位置,duration表示执行该移动的时间,单位是秒

moveRel(move):基于当前位置进行移动

from pyautogui import moveTo,moveRel

moveRel(100,200,duration=2)
#从当前鼠标所在的位置移动到向右100,向下200的位置,过程时间设定为2秒

鼠标点击

click:单击鼠标

​
from pyautogui import click
#click中指定了坐标,也是可以设置从执行到点击这个位置的duration时间,以及左边,中间还是右键
click(100,200,button='left',duration=2)
click(100,200,button='middle')
click(100,200,button='right')

 doubleClick:双击鼠标

from pyautogui import doubleClick
#参数与单击相同,只不过现在是双击鼠标
doubleClick(100,200,button='left',duration=2)
doubleClick(100,200,button='middle')
doubleClick(100,200,button='right')

mouseDown和mouseUp:鼠标的按下与释放 

from pyautogui import mouseDown,mouseUp
mouseDown()   # 鼠标按下
mouseUp()    # 鼠标释放

鼠标拖动

 dragTo:拖动鼠标到某位置

dragRel:根据当前位置对数表进行拖动

鼠标拖动与鼠标移动类似,但相比较,做了一个移动窗口的区别测试

from pyautogui import moveTo,mouseDown,mouseUp

mouseDown(button='left')
moveTo(1000,500)
mouseUp(button='left')
from pyautogui import dragTo,mouseDown,mouseUp

mouseDown(button='left')
dragTo(1000,500)
mouseUp(button='left')

在测试的时候发现,moveTo和鼠标按下相结合可以实现对某窗口的拖动,但是dragTo不可以

鼠标滚动

from pyautogui import scroll

scroll(300)#传入一个整数,正数表示向上滑动滚轮
scroll(-300)#向下滑动滚轮

屏幕处理

screenshot:截取全屏

截图将保存在脚本保存的同一目录下

from pyautogui import screenshot
screenshot().save('屏幕截图.png')#jpg格式也支持,其他格式请尝试

crop截取任意大小的截图 ,比如crop((

locateOnScreen:查找截图位置

 这里查找截图位置是在屏幕上查找,找到和保存的截图符合的位置

from pyautogui import locateOnScreen
print(locateOnScreen('屏幕截图.png'))

键盘输入

keyDown和keyUp:键盘按下和键盘释放

通过键盘的按下与释放可以实现多键同时按下,比如ctrl+v的粘贴等,为了实现多键同时,我们还有hotkey('ctrl','c'),可以接受多个参数,按照传入顺序按下,再按照相反的顺序释放

from pyautogui import keyDown,keyUp
keyDown('space')   # 按下空格键
keyUp('space')    # 释放空格键

keyDown('ctrl')
keyDown('c')
keyUp('c')
keyUp('ctrl') 

hotkey('ctrl','c')
 

press:按键后立即释放

可以看作按下和释放的一个组合,比如我们要发送消息,按enter键,按完之后就会释放,因此press应用起来较多

字母的大小写不影响按键,比如Enter,我们可与编写为press('enter'),press('ENter')

有的键位有两个,比如Shift,在后面加上left或者right,press('shiftleft')

需要强调的是enter按键公认为换行,可以用\n代替,即press('enter')=press('\n'),tab键可用\t代替

上下左右键分别为up,down,left,right

typewrite():连续打字

这里的typewrite可以识别大小写

from pyautogui import typewrite
typewrite('ceshi',0.5)
#第一个参数是要输入的内容,第二个参数是每次按键的间隔时间
typewrite(['c','e','s','h','i'])
#也可以传入一个单个字符串的列表
typewrite(['S','u','n'])#typewrite('Sun',0.5)
#将会输入大写的S

提示信息

提示框

from pyautogui import alert
print(alert(text='一个测试',title='test'))
#点击确定后将返回OK

 选择框

from pyautogui import confirm
print(confirm('请选择性别',buttons=['男','女']))
#将输出你的点击项

输入密码

from pyautogui import password
print(password('请输入你的密码'))
#将输出刚才输入的密码

输入普通内容

from pyautogui import prompt
print(prompt('请输入你的账号'))
#将返回刚才输入的内容

总结

到此这篇关于python编写脚本之pyautogui的安装和使用的文章就介绍到这了,更多相关python之pyautogui安装使用内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

(0)

相关推荐

  • python PyAutoGUI 模拟鼠标键盘操作和截屏功能

    简介 一款跨平台/无依赖的自动化测试工具,目测只能控制鼠标/键盘/获取屏幕尺寸/弹出消息框/截屏. 安装 pip install pyautogui 鼠标键盘控制 >>> import pyautogui >>> screenWidth, screenHeight = pyautogui.size() >>> currentMouseX, currentMouseY = pyautogui.position() >>> pyautog

  • Python键鼠操作自动化库PyAutoGUI简介(小结)

    PyAutoGUI是一个Python语言的键鼠自动化库,简单来说和按键精灵的功能一样.但是因为是Python的类库,所以可以使用Python代码配合一些其他类库完成更加强大的功能.下面让我为大家介绍一下吧. 安装 从pip安装即可. pip install pyautogui 稍等一下安装就完毕了. 使用介绍 简单介绍一下PyAutoGUI的函数以及使用方法. 鼠标操作函数 操作鼠标点击的函数. 函数 简单说明 move(x,y). moveTo(x,y) 移动鼠标,前者移动相对位置,后者移动到

  • 详解Python中pyautogui库的最全使用方法

    在使用Python做脚本的话,有两个库可以使用,一个为PyUserInput库,另一个为pyautogui库.就本人而言,我更喜欢使用pyautogui库,该库功能多,使用便利.下面给大家介绍一下pyautogui库的使用方法.在cmd命令框中输入pip3 install pyautogui即可安装该库! 常用操作 我们在pyautogui库中常常使用的方法,如下: import pyautogui pyautogui.PAUSE = 1 # 调用在执行动作后暂停的秒数,只能在执行一些pyaut

  • Python pyautogui模块实现鼠标键盘自动化方法详解

    本文简单介绍如何使用 Python 的 pyautogui 模块实现鼠标的自动移动以及键盘的自行输入. 该模块不是 Python 自带的, 因此执行以下命令进行安装 # pyautogui模块依赖image模块,没有image会报ImportError: No module named 'PIL'错误 pip install image pip install pyautogui 官方文档介绍:https://pyautogui.readthedocs.io/en/latest/ 使用 pyau

  • Python使用pyautogui模块实现自动化鼠标和键盘操作示例

    本文实例讲述了Python使用pyautogui模块实现自动化鼠标和键盘操作.分享给大家供大家参考,具体如下: 一.pyautogui模块简要说明 ## 使用 pyautogui 模块相关函数,可以模拟鼠标及键盘操作, 完整说明文档见: http://pyautogui.readthedocs.org/ # pip install pyautogui # 要注意的是,模拟移动鼠标与击键可能太快,导致其他程序跟不上,并且程序可能失去控制, # 需要掌握如何从问题中恢复,至少要能中止它. # 防止或

  • python中的pyautogui实现鼠标键盘控制功能

    pyautogui是一个可以控制鼠标和键盘的python库,类似的还有pywin32. pyautogui的安装 pip3 install python3-xlib 依赖库 sudo apt-get install scrot 依赖库 pip3 install pyautogui python3下安装pyautogui库 import pyautogui 引入该库 pyautogui的方法保护措施 为了防止pyautogui夺取了鼠标的控制权导致我们无法关掉该程序,它提供了一个保护措施,即把鼠标

  • python编程PyAutoGUI库使用与安装简介

    如何通过python代码解放双手,或者通过代码实现自动的电脑鼠标or键盘操作呢? python的PyAutoGUI库是一个很好地选择. 首先根据下面这个网址下载PyAutoGUI https://pypi.org/project/PyAutoGUI/ 因为我使用的python的IDE是Pycharm,所以在Pycharm的terminal里输入下列代码: pip install PyAutoGUI 安装成功~~ 然后在Pycharm的setting的project interprer里把PyAu

  • python编写脚本之pyautogui的安装和使用教程

    目录 前言 鼠标 鼠标移动 鼠标点击 鼠标滚动 屏幕处理 键盘输入 提示信息 提示框  选择框 输入密码 输入普通内容 总结 前言 以下是我对python中编写脚本最重要的库之一pyautogui的学习整理,分享给大家希望有所帮助 提示:我在初步使用pyautogui的过程中发现对于谷歌浏览器的click点击失效,其他尚未发现 pyautogui的安装  可以使用cmd输入pip install pyautogui进行库的安装 鼠标 对鼠标的控制是基于屏幕上的位置的,比如我的电脑的显示分辨率是1

  • 用Python编写脚本使IE实现代理上网的教程

    厂里上个网需要设置代理服务器,切换各种环境『包括但不仅限于开发环境.QA.预上线.验收.生产环境.压力测试.Demo--』都需要给浏览器设置不同的代理服务器. 虽然俺有神器Firefox+Change Host+HostAdmin+Proxy Selector的组合来轻松切换Host,切换浏览器代理,但是-凡是就怕『但是』. 但是碰到一些IE才有的bug时候不得不换浏览器啊!!还要开虚拟机进去搞IE6.IE8.360.搜狗这些奇葩浏览器啊!!! 有同事建议搞个bat脚本来做这些,但没人肯动手--

  • python自动脚本的pyautogui入门学习

    本文介绍了pyautogui入门学习,分享给大家,也给自己留个笔记 安装 pip install pyautogui 学习使用 加载模块 import pyautogui 获取信息类 电脑屏幕的左上角是位置(0,0),向右X坐标增加,向下Y坐标增加 # 获取屏幕尺寸 screenWidth, screenHeight = pyautogui.size() # 获取鼠标当前位置 currentMouseX, currentMouseY = pyautogui.position() 进行操作类 鼠标

  • 教你用python编写脚本实现自动签到

    目录 1. 背景原因 2. 签到原理 3. 需要的环境selenium 4. 安装模拟的插件 5. 下载完成 6.正题 7. 完工! 8. 更新 1. 背景原因 最近才上班,要求每天打卡!我老是忘记,于是乎搞个脚本进行自动签到. 2. 签到原理 模拟用户进行自行输入,然后登录,然后签到,在研究过程中使用到了python的selenium包,本人在win10环境中进行测试使用,可以实现基本的自动打卡. 3. 需要的环境selenium pip install selenium 4. 安装模拟的插件

  • python爬虫之selenium库的安装及使用教程

    第一步:python中安装selenium库 和其他所有Python库一样,selenium库需要安装 pip install selenium # Windows电脑安装selenium pip3 install selenium # Mac电脑安装selenium 第二步:下载谷歌浏览器驱动并合理放置 selenium的脚本可以控制所有常见浏览器,在使用之前需要安装浏览器端的驱动 注意:驱动和浏览器要版本对应 推荐使用Chrome浏览器:谷歌浏览器驱动 打开chrome浏览器,在网址栏中输入

  • 使用python编写批量卸载手机中安装的android应用脚本

    该脚本的功能是卸载android手机中安装的所有第三方应用,主要是使用adb shell pm.adb uninstall 命令,所以使用的前提是需要配好adb的环境变量,下面上代码: #!/usr/bin/env python import os def uninstall(): os.popen("adb wait-for-device") print "start uninstall..." for packages in os.popen("adb

  • 使用python编写脚本获取手机当前应用apk的信息

    前提是已设置ANDROID_HOME环境变量,使用aapt工具获取apk的信息,保存至脚本所在目录下的PackageInfo.txt文件中: import os import tempfile import re tempFile = tempfile.gettempdir() def get_aapt(): if "ANDROID_HOME" in os.environ: rootDir = os.path.join(os.environ["ANDROID_HOME&quo

  • python进程管理工具supervisor的安装与使用教程

    前言 在一个分布式环境中,每台机器上可能需要启动和停止多个进程,使用命令行方式一个一个手动启动和停止非常麻烦,而且查看每个进程的状态也很不方便.如果有一个工具能够实现每台机器上多个进程的简单高效中心化管理将是非常方便的.于是Supervisord工具应运而生.与Supervisord类似的工具包括monit, daemontools和runit.下面话不多说了,来一起看看详细的介绍吧. 安装 Supervisord是运行在Python环境下的服务监控程序,所以在安装supervisord之前必须

  • 使用Python编写简单的画图板程序的示例教程

    从这次开始,我会由简单到困难(其实也不会困难到哪里去)讲几个例程,每一个例程都是我自己写(或者修改,那样的话我会提供原始出处)的,都具有一定的操作性和娱乐性.例程中汇尽量覆盖到以前所讲的pygame中方方面面,如果看到哪一步不明白,那就再回去复习复习,基本没有人会看一遍什么都记住什么都掌握的,重复是学习之母,实践是掌握一门技艺的最好手段! 这次就先从一个最简单的程序开始,说实话有些太简单我都不好意思拿出手了,不过从简单的开始,容易建立自信培养兴趣.兴趣是学习之母嘛.我们这次做一个画板,类似Win

  • 编写Python CGI脚本的教程

    你是否想使用Python语言创建一个网页,或者处理用户从web表单输入的数据?这些任务可以通过Python CGI(公用网关接口)脚本以及一个Apache web服务器实现.当用户请求一个指定URL或者和网页交互(比如点击""提交"按钮)的时候,CGI脚本就会被web服务器启用.CGI脚本调用执行完毕后,它的输出结果就会被web服务器用来创建显示给用户的网页. 配置Apache web服务器,让其能运行CGI脚本 在这个教程里,我们假设Apache web服务器已经安装好,并

随机推荐