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

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')

 

### 回答1: 你可以使用 PyAutoGUI 库中的 dragRel() 方法来实现长按鼠标左键并移动鼠标的操作。这个方法需要传入两个参数,第一个参数是鼠标移动的相对距离,第二个参数是持续的时间。以下是一个示例代码: ```python import pyautogui # 将鼠标移动到 (100, 100) 的位置 pyautogui.moveTo(100, 100) # 长按鼠标左键并移动鼠标 pyautogui.dragRel(100, 0, duration=2.0) ``` 这段代码会将鼠标移动到 (100, 100) 的位置,然后长按鼠标左键并向右移动 100 个像素,持续时间为 2 秒钟。你可以根据需要自定义移动的距离和时间。 ### 回答2: 在Python中,要实现鼠标长按左键并移动鼠标的功能,可以使用pyautogui库。 首先,确保已经安装了pyautogui库。可以通过在命令行中运行以下命令来安装该库: pip install pyautogui 然后,在代码中导入pyautogui库: import pyautogui 接下来,使用pyautogui库的鼠标操作函数来实现长按左键并移动鼠标的功能。首先,可以使用pyautogui.mouseDown()函数来模拟鼠标按下左键的动作: pyautogui.mouseDown(button='left') 然后,可以使用pyautogui.move函数来移动鼠标位置。该函数的参数是鼠标移动的相对坐标。例如,如果想要向右移动20个像素,可以使用以下代码: pyautogui.move(20, 0) 接着,可以使用一个循环来重复执行上述移动的动作,从而实现长按鼠标左键并移动鼠标的效果。例如,下面的代码会连续向右移动20个像素,直到循环结束: while True: pyautogui.move(20, 0) 最后,为了停止长按左键并移动鼠标的功能,可以使用pyautogui.mouseUp()函数来模拟鼠标抬起左键的动作: pyautogui.mouseUp(button='left') 综上所述,通过使用pyautogui库的相关函数,就可以实现在Python中实现长按鼠标左键并移动鼠标的功能。 ### 回答3: 在Python中,我们可以使用`pyautogui`模块来模拟鼠标动作。要在长按鼠标左键的同时移动鼠标,我们可以使用以下步骤: 1. 首先,确保你已经安装了`pyautogui`模块。如果没有,请在命令行中运行`pip install pyautogui`来进行安装。 2. 导入`pyautogui`模块,可以使用以下代码实现: ```python import pyautogui ``` 3. 获取当前鼠标位置。可以使用`pyautogui.position()`方法来获取鼠标的当前位置,并将其保存在变量中,如`current_pos`。 4. 使用`pyautogui.mouseDown()`方法来长按鼠标左键。此方法在持续按下鼠标左键时将返回`True`。 5. 创建一个循环来移动鼠标。在循环中,可以使用`pyautogui.moveTo()`方法来移动鼠标位置。可以传递两个参数:水平方向上的移动距离和垂直方向上的移动距离。例如,可以使用`pyautogui.moveTo(current_pos[0] + 10, current_pos[1])`来将鼠标向右移动10个像素。 6. 在需要停止移动位置调用`pyautogui.mouseUp()`方法来松开鼠标左键。 下面是一个示例代码的简单实现: ```python import pyautogui # 获取当前鼠标位置 current_pos = pyautogui.position() # 长按鼠标左键 pyautogui.mouseDown() # 移动鼠标 while True: pyautogui.moveTo(current_pos[0] + 10, current_pos[1]) ``` 请注意,在这个示例中,我们设置了一个无限循环来持续移动鼠标。你可以根据需要修改这个代码,例如添加停止移动的条件或控制移动速度等。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值