一、

首先我们安装一下包:pyautogui

在windown 环境下:

先来到 Anaconda Prompt 中(PyCharm 的开发环境)

执行

pip install PyAutoGUI

在Linux 环境下:

sudo pip install PyAutoGUI

如果报错了,可以尝试指定版本:

pip install PyAutoGUI==0.9.38

如果安装失败,可以参考:https://www.cnblogs.com/SH170706/p/9809830.html

二、具体例子

移动鼠标

1)pyautogui.moveTo()函数将鼠标立即移动到屏幕的指定位置:x,y为坐标, duration指定所需秒数

####pyautogui.moveTo()函数将鼠标立即移动到屏幕的指定位置:x,y为坐标,duration指定所需秒数
import pyautogui
for i in range(10):pyautogui.moveTo(100,100,duration=0.25)pyautogui.moveTo(200,100,duration=0.25)pyautogui.moveTo(200,200,duration=0.25)pyautogui.moveTo(100,200,duration=0.25)

2)pyautogui.moveRel()函数相对于当前的位置移动鼠标

####pyautogui.moveRel()函数相对于当前的位置移动鼠标
import pyautogui
for i in range(10):pyautogui.moveRel(100,0,duration=0.25)pyautogui.moveRel(0,100,duration=0.25)pyautogui.moveRel(-100,0,duration=0.25)pyautogui.moveRel(0,-100,duration=0.25)####pyautogui.position()函数确定鼠标当前的位置
pyautogui.position()

控制鼠标交互

1)点击鼠标

###################################点击鼠标###############################################
import pyautogui
pyautogui.click(100,150,button='left')  ####在相应位置点击鼠标左键
'''
pyautogui.click(100,150,button='right') ####将在相应位置点击鼠标右键
pyautogui.mouseDown() ####按下鼠标按键
pyautogui.mouseDown() ####释放鼠标按键
pyautogui.doubleClick()  ####执行双击鼠标左键
pyautogui.rightClick()   ####执行双击右键
pyautogui.middleClick()  ####执行双击中键
'''

2)拖放鼠标

###################################拖放鼠标######################################################
'''
pyautogui.dragTo()和pyautogui.dragRel()函数:将鼠标拖动到一个新的位置,或相对当前位置的位置
dragTo()和dragRel()的参数与moveTo()和moveRel相同:x坐标/水平移动,y坐标/垂直移动,以及可选的时间间隔
'''
import pyautogui,time
time.sleep(5)
pyautogui.click()
distance=200
while  distance>0:pyautogui.dragRel(distance,0,duration=0.2)distance=distance-5pyautogui.dragRel(0,distance,duration=0.2)pyautogui.dragRel(-distance,0,duration=0.2)distance=distance-5pyautogui.dragRel(0,distance,duration=0.2)

3)滚动鼠标

###################################滚动鼠标######################################################
import pyperclip
numbers=''
for i in range(200):numbers=numbers+str(i)+'\n'
pyperclip.copy(numbers)###得到文本
import time,pyautogui
time.sleep(5);pyautogui.scroll(100)

控制键盘 

##############################通过键盘发送一个字符串##################################
'''
pyautogui.typewrite()函数向计算机发送虚拟按键
'''
>>> import pyautogui
>>> pyautogui.click(500,500);pyautogui.typewrite('Hello world!')###################################键名###############################################
import pyautogui
pyautogui.typewrite(['a','b','left','left','X','Y'])  ####以下的调用表示按a键,b键,左箭头两次,X和Y键
>>> pyautogui.typewrite(['a','b','left','left','X','Y'])
XYab>>>
>>> pyautogui.typewrite(['a','b','left','X','Y'])
aXYb>>>
'''
键盘键字符串                                                                           含义
'a','b','A','B','C','1','2','3'                              单个字符的键
'!','@','#',等等
'enter'(or 'return' or '\n')                             回车键
'esc'                                                                                     Esc键
......
'''

按下和释放键盘  

###################################按下和释放键盘####################################
#'''
#pyautogui.keyDown()和pyautogui,keyUp()将向计算机发送虚拟的按键和释放
#'''
import pyautogui
pyautogui.keyDown('shift');pyautogui.press('4');pyautogui.keyUp('shift')
######################################热键组合#######################################
import pyautogui
pyautogui.hotkey('ctrl','c')      ##即Ctrl-C键
'''
等同于
pyautogui.keyDown('ctrl')
pyautogui.keyDown('c')
pyautogui.keyUp('c')
pyautogui.keyUp('ctrl')
'''
import pyautogui,time
def commentAfterDelay():pyautogui.click(500,500)time.sleep(2)pyautogui.hotkey('shift','3')pyautogui.typewrite('In IDLE,Alt-3 comments out a line.')commentAfterDelay()

现在鼠标在哪里 

######################################现在鼠标在哪里#######################################
####显示鼠标坐标位置,给出这个像素的RGB颜色
import pyautogui
print ('Press Ctrl-C to quit')
try:while  True:x,y=pyautogui.position()positionStr='X: '+str(x).rjust(4)+' Y: '+str(y).rjust(4)pixelColor=pyautogui.screenshot().getpixel((x,y))positionStr +='RGB: ('+str(pixelColor[0]).rjust(3)positionStr +=', '+str(pixelColor[1]).rjust(3)positionStr +=', '+str(pixelColor[2]).rjust(3) +')'print (positionStr)print ('\b'*len(positionStr))
except KeyboardInterrupt:print ('\nDone.')

每隔10秒移动下鼠标 

###########################每隔10秒移动下鼠标###########################
import pyautogui,time
try:while True:     time.sleep(10)pyautogui.moveRel(-100,100,duration=0.25)
except KeyboardInterrupt:print ('\nDone.')

希望对你有帮助。 

python 编程控制键盘和鼠标相关推荐

  1. python怎么控制键盘和鼠标_利用python怎么控制键盘与鼠标

    利用python怎么控制键盘与鼠标 发布时间:2020-11-30 16:01:39 来源:亿速云 阅读:59 这期内容当中小编将会给大家带来有关利用python怎么控制键盘与鼠标,文章内容丰富且以专 ...

  2. python怎么控制键盘和鼠标_Python pyautogui 控制键盘和鼠标

    1. 启动自动防故障功能 # 设置调用函数后停顿2s;启动自动防故障功能(将鼠标移到左上raise FailSafeException) pyautogui.PAUSE=2 pyautogui.FAI ...

  3. python自动控制_程序员用Python实现自动化控制键盘和鼠标

    本文的主题为介绍如何通过程序自动化控制键盘和鼠标. 要解决什么问题 在我们实际工作生活中,有许多重复性的工作,比如新员工入职流程.除了员工个人信息的不同,其他的流程应该是完全一样,因此此类工作完全可以 ...

  4. python pywinauto 单击鼠标_教你快速用 Python 控制键盘和鼠标,彻底解放双手

    你还在为在计算机上双击或提交表单而烦恼吗?今天就用python来控制键盘和鼠标,解放双手! 第一,Pyauogui库 我们可以首先安装pyauogui库,通过它我们可以编写一些Python脚本来控制鼠 ...

  5. python程序编程代码大全,python编程代码详解

    大家好,本文将围绕python程序编程代码大全展开说明,python编程游戏代码是一个很多人都想弄明白的事情,想搞清楚python代码大全简单需要先了解以下几个事情. 1.python编程例子有哪些? ...

  6. 10分钟教你用 Python 控制键盘和鼠标

    ​您仍在努力在计算机上双击或提交表单吗? 如果我告诉你我可以通过python提前写下相关的操作说明,让它帮你操作鼠标和键盘,但你却在和姐姐聊天,不是很神奇吗? 第一,Pyauogui库 我们可以首先安 ...

  7. python控制键盘和鼠标

    python控制键盘和鼠标 安装PyAutoGui模块 暂停和防止故障设置 控制鼠标 获取当前执行机的分辨率 移动鼠标 获取鼠标位置 点击鼠标操作 图像识别 拖动鼠标操作 滚动鼠标操作 获取屏幕快照 ...

  8. Python程序员的圣经——《Python编程快速上手:让繁琐工作自动化》尾末附下载地址

    一.前言 如今,人们面临的大多数任务都可以通过编写计算机软件来完成.Python是一种解释型.面向对象.动态数据类型的高级程序设计语言.通过Python编程,我们能够解决现实生活中的很多任务. 今天给 ...

  9. 用GUI自动控制键盘和鼠标

    用GUI自动控制键盘和鼠标 --出处    https://automatetheboringstuff.com/chapter18/ 用GUI自动控制键盘和鼠标 了解用于编辑电子表格,下载文件和启动 ...

最新文章

  1. RHEL5.5 安装 oracle 11g
  2. 【UGV】Mec 麦轮版小车驱动程序示例
  3. DirectInput:poll轮询理解
  4. 在Linux系统中构建虚拟网络
  5. POJ 2409 Let it Bead (Polya定理)
  6. phpmyadmin管理mysql_用phpMyAdmin管理MySQL数据库_MySQL
  7. 天鼎:一个技术人在世界读书日的遐想
  8. 【Flink】Flink The TaskSlotTable has to be started
  9. poi获取段落位置_java poi读取.doc和.docx文件时获取图片与段落的对应关系
  10. HTML(一):HTML基本元素标签
  11. [Tizen开发]SDB调试工具使用简介
  12. 计算机基础17秋在线作业3,西南大学17秋1056《计算机基础》在线作业(参考资料)...
  13. AxureUX中后台管理信息系统通用原型方案 v2 (全新AxureRP8作品 )
  14. FTA故障树分析法-DFMEA的另外一张脸
  15. Java实现系统统一对外开放网关入口设计
  16. 软负载和硬负载的区别分析
  17. oracle逗号隔开行转列_oralce逗号分割变多行-Oracle
  18. 如何制作并美化我们的微信公众号的二维码?
  19. 史上最小白之BM25详解与实现
  20. Android之多个View同时动画

热门文章

  1. CSS圆角边框、盒子阴影、文字阴影(01-07课)
  2. 转载tangl_99的Servlet 实现文件上传下载--自己的一点心得
  3. 023-公平感|领导者的内功
  4. android仿IT之家、炫酷水波纹、Kotlin MVP项目、后台模拟点击、蜂巢迷宫小游戏等源码...
  5. 学校机房的网屏蔽了某些网站无法访问怎么办?
  6. 33.Redis详解
  7. 秒懂云通信:如何使用阿里云号码认证服务(小白指南)
  8. 《软技能·代码之外的生存指南》读书笔记 ——自我营销
  9. hibernate查询结果映射到实体和map的方法
  10. java微信小程序支付-回调(Jsapi-APIv3)