python教程之利用pyautogui图形自动化击败重复性办公任务

pyautogui一个神奇的图像自动化库,学会之后无所不能。上能挂机刷宝箱,下能自动写文档。(>人<;)让我装个逼,别锤我,谢谢!

安装

这个pyautogui在win10上的安装挺坑的,当初第一次安装时出现了好几次错误(┬┬﹏┬┬)
安装命令如下:

pip install -i https://pypi.tuna.tsinghua.edu.cn/simple pyautogui

导入模块

在安装好这个模块后我们还需要在程序的开头加上如下代码导入该模块

import pyautogui

鼠标操作

讲鼠标操作前,我们提个问题,如何确认电脑上屏幕上某个图标的位置?
答:是通过图标的左上角的坐标位置进行确认的。
如图所示,我们可以看看出是以屏幕的左上角作为起始点,进行确认屏幕中的位置。细心的小伙伴可能会发现,这坐标的走向类似于数学坐标系中的第四象限。没错,不过Y轴的数值类似于第四象限的Y轴的绝对值。也就是说Y的值越大,在屏幕中的为位置就越向下。说明如果我想让鼠标点击某个位置,必须要先获取该位置的坐标值。

获取鼠标位置
所以我们的第一条命令就是获取鼠标当前的位置。

x,y = pyautogui.position()

我们来打印下当前的位置

print ("当前鼠标的X轴的位置为:{},Y轴的位置为:{}".format(x,y))

输出结果如下:

当前鼠标的X轴的位置为:333,Y轴的位置为:327

获取屏幕分辨率
如何获取屏幕的分辨率呢?也就是最大的X和Y的值

x,y = pyautogui.size()

打印屏幕的分辨率

print ("当前屏幕的分辨率是{}*{}".format(x,y))

输出结果:

当前屏幕的分辨率是1536*864

移动鼠标
比如说,电脑桌面上的火狐浏览器的位置是(100,100).我如何将鼠标移动到这个位置呢?

pyautogui.moveTo(x=300,y=300,duration=0.25)

duration类似于移动时间或移动速度,省略后则是瞬间移动到指定的位置

单击鼠标
如何让鼠标左键点击屏幕中(100,100)的位置呢?

pyautogui.click(x=100,y=150,button='left')

button=‘left’相当于鼠标左键,button=‘right’相当于鼠标右键。当不带button参数时,默认为左键。

双击鼠标
如何双击鼠标呢?

pyautogui.doubleClick(x=100,y=150,button="left")

button=‘left’相当于鼠标左键,button=‘right’相当于鼠标右键。当不带button参数时,默认为左键。

拖拽鼠标
如何实现拖拽鼠标?

pyautogui.dragTo(x,y,duration=0.25)

duration类似于移动时间或移动速度,省略后则是瞬间移动到指定的位置

键盘操作

在讲键盘操作之间,先展示一张从我们盗来的按键映射表

发送组合键

pyautogui.hotkey('win', 'r')

发送的按键之间使用【,】逗号隔开。

输入内容

pyautogui.typewrite(message="hello world",interval=0.25)

message后面跟要输入的内容,interval用于设置输入的速度

高级操作

pyautogui有内置的截图功能,可以使用screenshot方法进行截图,然后可以操作截图,进行确认图片位置或者指定坐标的颜色等。

获取坐标点的像素

img = pyautogui.screenshot()color = img.getpixel((100,100))

执行结果:

该坐标的像素点的颜色是:(255, 255, 255)

返回的是三原色值。

获取图片的位置

x,y,width,height =  pyautogui.locateOnScreen('a.png')

括号中传递的是图标文件的路径
执行:

print ("该图标在屏幕中的位置是:X={},Y={},宽{}像素,高{}像素".format(x,y,width,height))

结果:

该图标在屏幕中的位置是:X=9,Y=741,宽81像素,高95像素

获取图标的中心点

x, y = pyautogui.center((9,741,81,95))

括号中分别传递,图片的X轴,Y轴,宽,长
执行命令:

x,y = pyautogui.center((9,741,81,95))

执行结果:

该图标的中心点是:X=49,Y=788

教学代码

# -*- coding:utf-8 -*-#作者:猫先生的早茶#时间:2019年5月26日import pyautogui"""获取鼠标当前的坐标位置"""'''x,y = pyautogui.position()print ("当前鼠标的X轴的位置为:{},Y轴的位置为:{}".format(x,y))'''"""获取屏幕分辨率"""'''x,y = pyautogui.size()print ("当前屏幕的分辨率是{}*{}".format(x,y))'''"""移动鼠标到指定位置"""'''pyautogui.moveTo(x=300,y=300,duration=0.25)'''"""点击鼠标"""'''pyautogui.click(x=100,y=150,button='right')'''"""双击鼠标"""'''pyautogui.doubleClick(x=100,y=150,button="left")'''"""发送组合键"""'''pyautogui.hotkey('win', 'r')'''"""输入内容"""'''pyautogui.typewrite(message="hello world",interval=0.25)'''"""获取指定坐标的颜色"""'''img = pyautogui.screenshot()color = img.getpixel((100,100))print ("该坐标的像素点的颜色是:{}".format(color))'''"""获取图标的位置"""'''x,y,width,height =  pyautogui.locateOnScreen('a.png')print ("该图标在屏幕中的位置是:X={},Y={},宽{}像素,高{}像素".format(x,y,width,height))'''"""获取中心点"""'''x,y = pyautogui.center((9,741,81,95))print ("该图标的中心点是:X={},Y={}".format(x,y))'''
(0)

相关推荐

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

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

  • 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简介(小结)

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

  • python PyAUtoGUI库实现自动化控制鼠标键盘

    PyAutoGUI 不知道你有没有用过,它是一款用Python自动化控制键盘.鼠标的库.但凡是你不想手动重复操作的工作都可以用这个库来解决. 比如,我想半夜时候定时给发个微信,或者每天自动刷页面等操作,它能完全模拟手动操作,而你可以安心的刷剧了. 嗯,懒惰是程序员的美德. 安装pyautogui pip install pyautogui 键盘鼠标控制 >>> import pyautogui >>> screenWidth, screenHeight = pyauto

  • Python PyAutoGUI模块控制鼠标和键盘实现自动化任务详解

    本文实例讲述了Python PyAutoGUI模块控制鼠标和键盘实现自动化任务.分享给大家供大家参考,具体如下: PyAutoGUI是用Python写的一个模块,使用它可以控制鼠标和键盘. 利用它可以实现自动化任务,再也不用担心有重复枯燥的任务了. pyautogui模块的功能: 移动鼠标.点击左右键和滚轮 发送虚拟按键 # 安装pyautogui 这个模块支持Windows, Mac OS X 和 Linux. 根据系统不同,你可能需要安装一些依赖. Linux系统(Debian系列): $

  • python教程之利用pyautogui图形自动化击败重复性办公任务

    pyautogui一个神奇的图像自动化库,学会之后无所不能.上能挂机刷宝箱,下能自动写文档.(>人<:)让我装个逼,别锤我,谢谢! 安装 这个pyautogui在win10上的安装挺坑的,当初第一次安装时出现了好几次错误(┬┬﹏┬┬)安装命令如下: pip install -i https://pypi.tuna.tsinghua.edu.cn/simple pyautogui 导入模块 在安装好这个模块后我们还需要在程序的开头加上如下代码导入该模块 import pyautogui 鼠标操作

  • PyAutoGUI图形用户界面自动化的超详细教程

    目录 开始之前 查看屏幕大小 获取当前鼠标的位置 检查指定坐标是否在屏幕上 设置暂停时间 鼠标功能 移动鼠标 鼠标点击 鼠标拖动 鼠标滚动 屏幕功能 截屏功能 定位功能 消息框功能 alert()函数 confirm()函数 prompt()函数 password()函数 键盘控制功能 write()函数 press()函数 hotkey()函数 总结 开始之前 在开始之前,要先安装所需要的模块 pyautogui, pyautogui 模块可以向 Windows 发送虚拟按键和鼠标点击. pi

  • python 利用PyAutoGUI快速构建自动化操作脚本

    一.背景 大家好,我是安果! 我们经常遇到需要进行大量重复操作的时候,比如:网页上填表,对 web 版本 OA 进行操作,自动化测试或者给新系统首次添加数据等 这些操作的特点往往是:数据同构,大多是已经有了的结构化数据:操作比较呆板,都是同一个流程的点击.输入:数据量大,极大消耗操作人精力 那么能不能自动化呢? 二.自动化的方案 如果你在 web 上进行操作, Python 的 Selenium 可以满足要求.如果需要对 GUI 界面进行操作,你恐怕得试验下"按键精灵"能不能满足要求.

  • Python自动操作神器PyAutoGUI的使用教程

    目录 GUI 控制神器 鼠标操作 鼠标移动 鼠标点击 鼠标拖动 鼠标滚动 屏幕处理 获取屏幕截图 键盘输入 键盘函数 特殊符号 快捷键 信息框 总结 我们以前讲过怎样使用 Python 在浏览器中实现页面自动化操作,不管用哪种方式实现,都是通过定位页面中的元素来进行相应的操作. 今天我们来聊一聊如何在桌面实现自动化操作.与浏览器页面自动化操作类似,桌面自动化操作也是需要定位鼠标在桌面的位置,然后根据定位的位置执行对应的操作. GUI 控制神器 我们今天的主人公是 pyautogui,pyauto

  • Python利用PyAutoGUI实现自动点赞

    目录 前言 思路 实现 总结 前言 在上篇文章<Python自动操作 GUI 神器——PyAutoGUI>中,我跟大家讲解了一下 pyautogui 的一些基础知识和操作,大家反馈很好,给了我好多赞,在此先跟大家说声三克油! 在得到大家正反馈的同时,我受到了很大鼓舞,感觉如果只是介绍一下基础操作,有点不过瘾,所以今天晚上加班回来,虽然很不想打开电脑,但是还是忍着疲惫给大家奉献一个小实例. 为此,我跑去洗手间用凉水洗了一把脸,顿时清醒多了,下面进入正题. 作为一个 GUI 操作的神器,我们看到了

  • Python爬虫教程之利用正则表达式匹配网页内容

    前言 Python爬虫,除了使用大家广为使用的scrapy架构外,还有很多包能够实现一些简单的爬虫,如BeautifulSoup.Urllib.requests,在使用这些包时,有的网络因为比较复杂,比较难以找到自己想要的代码,在这个时候,如果能够使用正则表达式,将能很方便地爬取到自己想要的数据. 何为正则表达式 正则表达式是一种描述字符串排列的一种语法规则,通过该规则可以在一个大字符串中匹配出满足规则的子字符串.简单来说,就是给定了一个字符串,在字符串中找到想要的字符串,如一个电话号码,一个I

  • Python利用PyAutoGUI模块实现控制鼠标键盘

    目录 前言 1.鼠标的相关控制 2.键盘的相关控制 前言 PyAutoGUI是一个简单易用,跨平台的可以模拟键盘鼠标进行自动操作的python库. 使用pip的方式安装pyautogui模块 pip install pyautogui pyautogui在使用的时候有两个比较关键的隐患(程序在启动起来以后很难关闭)需要注意一下.一是鼠标出现在屏幕的最上方会出现报错,二是键盘的自动操作太快,所以需要先设置一下相关的参数. import pyautogui as ui # 导入pyautogui代码

  • Python利用PyAutoGUI轻松搞定图片上传

    目录 实时获取鼠标的当前坐标 开始上传了 完整脚本 运行过程 最近用vuepress建了个博客,音乐的背景图片需要网络地址. 还有博客自动复用的摘要图片也需地址 开始用的阿里云的免费对象存储oss,但又是登录又是设置读写权限的,稀碎的操作令人疲惫.能不能简单点,自动上传,并且马上能得到文件的网络地址. 于是开始探索轻量级的方案,手动给自己搞一个,一键复制开箱即用的的上传页面: 把文件传到自己的云服务器上,传完后自带文件地址和copy按钮,流程顿时清爽了许多. 接下来的问题是,图片准备好了,十几张

  • spring boot 项目利用Jenkins实现自动化部署的教程详解

    本文主要讲解利用Jenkins实现spring boot项目的自动化部署: •1.后台技术架构:Spring boot 1.4.2.RELEASE +Mybatis 3+ Redis+ Mysql 5.6+JDK8; •2.代码构建工具:maven 3.3; •3.源代码托管工具:Gitlab; •4.利用maven的docker插件打包成docker镜像在docker容器中部署项目: •5.服务器是阿里云的ECS; 一.安装Jenkins 1.阿里云服务器安装Jenkins方式见如下链接地址

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

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

随机推荐