【记录】pynput控制键盘鼠标

 突然想用程序模拟鼠标键盘的输入,发现了pynput这个包;挺有意思;记录一下!

程序例子:

# from pyinput import mouse
#
import time
from pynput import mouse, keyboard


def rt_show_mouse_position():
    # 创建一个鼠标
    m_mouse = mouse.Controller()
    temp = (0,0)
    # 查看鼠标位置
    while True:
        if (m_mouse.position!=temp):
            print(m_mouse.position)
        temp = m_mouse.position

def move_mouse_to_destination(dest):
    if isinstance(dest, ()):
        raise Exception('input arg error', dest)
    m_mouse = mouse.Controller()
    # 将鼠标移动到指定位置
    m_mouse.position = dest
    # 点击鼠标左键
    m_mouse.click(mouse.Button.left)


def keyboard_input(mes, time_sleep):
    while True:
        # 创建 一个键盘
        m_keyboard = keyboard.Controller()

        # 键盘输入 信息
        m_keyboard.type(mes)

        # 按下enter, 松开
        m_keyboard.press(keyboard.Key.enter)
        m_keyboard.release(keyboard.Key.enter)

 
好的,我来回答您的问题。 pynput是Python的一个第三方库,可以用来控制键盘鼠标。它提供了两个主要的模块:keyboardmouse。以下是pynput的详细用法: 1. 安装pynput 在终端输入以下命令即可安装pynput: ``` pip install pynput ``` 2. 控制键盘 使用pynput控制键盘需要导入keyboard模块,然后创建一个Listener对象并定义回调函数来监听键盘事件。以下是一个示例代码: ```python from pynput import keyboard def on_press(key): try: print('Key {} pressed.'.format(key.char)) except AttributeError: print('Special key {} pressed.'.format(key)) def on_release(key): print('Key {} released.'.format(key)) with keyboard.Listener(on_press=on_press, on_release=on_release) as listener: listener.join() ``` 这个代码可以监听键盘按下和松开的事件,并打印出对应的键位信息。 3. 控制鼠标 使用pynput控制鼠标需要导入mouse模块,然后创建一个Controller对象来模拟鼠标操作。以下是一个示例代码: ```python from pynput.mouse import Button, Controller mouse = Controller() # 鼠标移动到(x, y)位置 mouse.position = (100, 200) # 鼠标左键单击 mouse.click(Button.left, 1) # 鼠标右键单击 mouse.click(Button.right, 1) # 鼠标滚轮向上滚动10个单位 mouse.scroll(0, 10) ``` 这个代码可以模拟鼠标移动、左键单击、右键单击和滚轮滚动操作。 以上就是pynput的详细用法,希望能对您有所帮助。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值