python 调用pyautogui 实时获取鼠标的位置、移动鼠标的方法

yipeiwu_com5年前Python基础

PyAutoGUI是一个纯Python的GUI自动化工具,其目的是可以用程序自动控制鼠标和键盘操作,利用它可以实现自动化任务

本章介绍了许多不同函数,下面是快速的汇总参考:

moveTo(x,y)将鼠标移动到指定的 x、y 坐标。

moveRel (xOffset,yOffset)相对于当前位置移动鼠标。

dragTo(x,y)按下左键移动鼠标。

dragRel (xOffset,yOffset)按下左键,相对于当前位置移动鼠标。

click(x,y,button)模拟点击(默认是左键)。

rightClick() 模拟右键点击。

middleClick() 模拟中键点击。

doubleClick() 模拟左键双击。

mouseDown(x,y,button)模拟在 x、y 处按下指定鼠标按键。

mouseUp(x,y,button)模拟在 x、y 处释放指定键。

scroll (units)模拟滚动滚轮。正参数表示向上滚动,负参数表示向下滚动。

typewrite(message)键入给定消息字符串中的字符。

typewrite([key1,key2,key3])键入给定键字符串。

press(key)按下并释放给定键。

keyDown(key)模拟按下给定键。

keyUp(key)模拟释放给定键。

hotkey([key1,key2,key3])模拟按顺序按下给定键字符串,然后以相反的顺序释放。

screenshot() 返回屏幕快照的 Image 对象(参见第 17 章关于 Image 对象的信息)。

代码部分:

import os
import time
import pyautogui as pag
try:
 while True:
  print("Press Ctrl-C to end")
  screenWidth, screenHeight = pag.size() #获取屏幕的尺寸
  print(screenWidth,screenHeight)
  x,y = pag.position() #获取当前鼠标的位置
  posStr = "Position:" + str(x).rjust(4)+','+str(y).rjust(4)
  print(posStr)
  time.sleep(0.2)
  os.system('cls') #清楚屏幕
except KeyboardInterrupt:
 print('end....')

实际效果

import pyautogui
screenWidth, screenHeight = pyautogui.size()
currentMouseX, currentMouseY = pyautogui.position()
pyautogui.moveTo(100, 150)
pyautogui.click()
# 鼠标向下移动10像素
pyautogui.moveRel(None, 10)
pyautogui.doubleClick()
# 用缓动/渐变函数让鼠标2秒后移动到(500,500)位置
# use tweening/easing function to move mouse over 2 seconds.
pyautogui.moveTo(1800, 500, duration=2, tween=pyautogui.easeInOutQuad)
# 在每次输入之间暂停0.25秒
pyautogui.typewrite('Hello world!', interval=0.25) #输入文本
pyautogui.press('esc') #按下按键
pyautogui.keyDown('shift')
pyautogui.press(['left', 'left', 'left', 'left', 'left', 'left'])
pyautogui.keyUp('shift')
pyautogui.hotkey('ctrl', 'c')

以上这篇python 调用pyautogui 实时获取鼠标的位置、移动鼠标的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

在Python的gevent框架下执行异步的Solr查询的教程

 我经常需要用Python与solr进行异步请求工作。这里有段代码阻塞在Solr http请求上, 直到第一个完成才会执行第二个请求,代码如下:   impor...

Flask框架单例模式实现方法详解

本文实例讲述了Flask框架单例模式实现方法。分享给大家供大家参考,具体如下: 单例模式: 程序运行时只能生成一个实例,避免对同一资源产生冲突的访问请求。 Django &nb...

Python SQLite3数据库日期与时间常见函数用法分析

本文实例讲述了Python SQLite3数据库日期与时间常见函数。分享给大家供大家参考,具体如下: import sqlite3 #con = sqlite3.connect('e...

python粘包问题及socket套接字编程详解

粘包问题 TCP协议在传输过程中会出现数据粘包问题 讲一下TCP和UDP的区别,都是传数据的协议,没有好坏之说,只是不同的应用需求可能会更好选择哪一个协议 TCP:适合传输数量大 ,需...

python中文分词教程之前向最大正向匹配算法详解

前言 大家都知道,英文的分词由于单词间是以空格进行分隔的,所以分词要相对的容易些,而中文就不同了,中文中一个句子的分隔就是以字为单位的了,而所谓的正向最大匹配和逆向最大匹配便是一种分词匹...