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


Posted in Python onSeptember 09, 2020

PyAutoGUI 不知道你有没有用过,它是一款用Python自动化控制键盘、鼠标的库。但凡是你不想手动重复操作的工作都可以用这个库来解决。

比如,我想半夜时候定时给发个微信,或者每天自动刷页面等操作,它能完全模拟手动操作,而你可以安心的刷剧了。

嗯,懒惰是程序员的美德。

安装pyautogui

pip install pyautogui

键盘鼠标控制

>>> import pyautogui
>>> screenWidth, screenHeight = pyautogui.size() # 返回屏幕分辨率
>>> currentMouseX, currentMouseY = pyautogui.position() # 返回鼠标的所在位置
>>> pyautogui.moveTo(100, 150) #移动鼠标到指定位置
>>> pyautogui.click() # 单击
>>> pyautogui.click(200, 220) # 单击指定位置
>>> pyautogui.move(None, 10) # 移动鼠标10个像素
>>> pyautogui.doubleClick() # 双击鼠标
>>> pyautogui.write('Hello world!', interval=0.25) # 输入字符串,每个字符停留时间0.25秒
>>> pyautogui.press('esc') # 退出键
>>> pyautogui.keyDown('shift') # Shitf键盘
>>> pyautogui.hotkey('ctrl', 'c') # 组合键

用pyautogui自动画图

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

显示消息盒子

除了可以控制鼠标键盘外,还可以调用系统弹窗

>>> import pyautogui
>>> pyautogui.alert('This is an alert box.')
'OK'
>>> pyautogui.confirm('Shall I proceed?')
'Cancel'
>>> pyautogui.confirm('Enter option.', buttons=['A', 'B', 'C'])
'B'
>>> pyautogui.prompt('What is your name?')
'Al'
>>> pyautogui.password('Enter password (text will be hidden)')
'swordfish'

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

通过窗口消息盒子可以实现一些简单的人机交互,比如某些地方需要人工输入内容时,这样可以接受用户的指令。

截屏

截图是使用的Pillow模块实现的,截图的用处在于通过图片识别技术识别图片内容,然后通过内容精准定位到某个元素的位置,实现精准点击。

>>> import pyautogui
>>> im1 = pyautogui.screenshot()
>>> im1.save('my_screenshot.png')
>>> im2 = pyautogui.screenshot('my_screenshot2.png')

以上就是python PyAUtoGUI库实现自动化控制鼠标键盘的详细内容,更多关于python PyAUtoGUI库的资料请关注三水点靠木其它相关文章!

Python 相关文章推荐
Python 搭建Web站点之Web服务器网关接口
Nov 06 Python
python读取csv文件并把文件放入一个list中的实例讲解
Apr 27 Python
Python中的TCP socket写法示例
May 11 Python
Django 路由控制的实现代码
Nov 08 Python
Python批量处理csv并保存过程解析
May 16 Python
使用keras2.0 将Merge层改为函数式
May 23 Python
Python+Kepler.gl轻松制作酷炫路径动画的实现示例
Jun 02 Python
Python爬虫小例子——爬取51job发布的工作职位
Jul 10 Python
Python实现加密的RAR文件解压的方法(密码已知)
Sep 11 Python
Python实现图片指定位置加图片水印(附Pyinstaller打包exe)
Mar 04 Python
Python list列表删除元素的4种方法
Nov 01 Python
Python 视频画质增强
Apr 28 Python
Pytorch生成随机数Tensor的方法汇总
Sep 09 #Python
详解python内置模块urllib
Sep 09 #Python
python语音识别指南终极版(有这一篇足矣)
Sep 09 #Python
python 爬取B站原视频的实例代码
Sep 09 #Python
利用Python实现Json序列化库的方法步骤
Sep 09 #Python
python之语音识别speech模块
Sep 09 #Python
python speech模块的使用方法
Sep 09 #Python
You might like
要会喝咖啡也要会知道咖啡豆
2021/03/03 咖啡文化
如何去掉文章里的 html 语法
2006/10/09 PHP
php中的登陆login
2007/01/18 PHP
ThinkPHP3.1新特性之对分组支持的改进与完善概述
2014/06/19 PHP
跟我学Laravel之安装Laravel
2014/10/15 PHP
Yii实现简单分页的方法
2016/04/29 PHP
PHP入门教程之面向对象的特性分析(继承,多态,接口,抽象类,抽象方法等)
2016/09/11 PHP
PHP利用超级全局变量$_GET来接收表单数据的实例
2016/11/05 PHP
qTip 基于JQuery的Tooltip插件[兼容性好]
2010/09/01 Javascript
我用的一些Node.js开发工具、开发包、框架等总结
2014/09/25 Javascript
jquery淡入淡出效果简单实例
2016/01/14 Javascript
详细总结Javascript中的焦点管理
2016/09/17 Javascript
微信小程序之小豆瓣图书实例
2016/11/30 Javascript
解决nodejs中使用http请求返回值为html时乱码的问题
2017/02/18 NodeJs
详解AngularJs HTTP响应拦截器实现登陆、权限校验
2017/04/11 Javascript
深入理解ES6中let和闭包
2018/02/22 Javascript
vue组件(全局,局部,动态加载组件)
2018/09/02 Javascript
Next.js项目实战踩坑指南(笔记)
2018/11/29 Javascript
Vue 后台管理类项目兼容IE9+的方法示例
2019/02/20 Javascript
Vue.js 中的实用工具方法【推荐】
2019/07/04 Javascript
微信小程序返回上一页传参并刷新过程解析
2019/12/13 Javascript
原生JS实现弹幕效果的简单操作指南
2020/11/10 Javascript
Python中的字符串操作和编码Unicode详解
2017/01/18 Python
Python cookbook(数据结构与算法)对切片命名清除索引的方法
2018/03/13 Python
python内置数据类型之列表操作
2018/11/12 Python
Python3中的f-Strings增强版字符串格式化方法
2020/03/04 Python
pytorch使用horovod多gpu训练的实现
2020/09/09 Python
HTML5 Canvas绘制五星红旗
2016/05/04 HTML / CSS
canvas小画板之平滑曲线的实现
2020/08/12 HTML / CSS
联想新西兰官方网站:Lenovo New Zealand
2018/10/30 全球购物
大学新生军训方案
2014/05/03 职场文书
作风建设演讲稿
2014/05/23 职场文书
企业总经理任命书
2014/06/05 职场文书
中国梦口号
2014/06/13 职场文书
2015年保安个人工作总结
2015/04/02 职场文书
前端传参数进行Mybatis调用mysql存储过程执行返回值详解
2022/08/14 MySQL