Laravel  
laravel
文档
数据库
架构
入门
php技术
    
Laravelphp
laravel / php / java / vue / mysql / linux / python / javascript / html / css / c++ / c#

python pynput

作者:以往沧海   发布日期:2025-06-25   浏览:67

from pynput.keyboard import Key, Controller as KeyboardController
from pynput.mouse import Button, Controller as MouseController
import time

# 初始化键盘和鼠标控制器
keyboard = KeyboardController()
mouse = MouseController()

# 模拟键盘输入
def simulate_keyboard_input():
    # 按下并释放空格键
    keyboard.press(Key.space)
    keyboard.release(Key.space)

    # 输入文本
    keyboard.type('Hello, World!')

# 模拟鼠标点击
def simulate_mouse_click():
    # 移动鼠标到指定位置 (x=500, y=500)
    mouse.position = (500, 500)
    time.sleep(1)  # 等待1秒

    # 点击鼠标左键
    mouse.click(Button.left, 1)

# 监听键盘事件
from pynput.keyboard import Listener as KeyboardListener

def on_press(key):
    try:
        print(f'按键 {key.char} 被按下')
    except AttributeError:
        print(f'特殊键 {key} 被按下')

def on_release(key):
    print(f'{key} 被释放')
    if key == Key.esc:
        # 如果按下了Esc键,停止监听
        return False

# 启动键盘监听
with KeyboardListener(on_press=on_press, on_release=on_release) as listener:
    listener.join()

# 监听鼠标事件
from pynput.mouse import Listener as MouseListener

def on_move(x, y):
    print(f'鼠标移动到 ({x}, {y})')

def on_click(x, y, button, pressed):
    if pressed:
        print(f'鼠标在 ({x}, {y}) 处按下 {button}')
    else:
        print(f'鼠标在 ({x}, {y}) 处释放 {button}')

def on_scroll(x, y, dx, dy):
    print(f'鼠标在 ({x}, {y}) 处滚动 ({dx}, {dy})')

# 启动鼠标监听
with MouseListener(on_move=on_move, on_click=on_click, on_scroll=on_scroll) as listener:
    listener.join()

解释说明:

  1. 导入模块

    • pynput.keyboardpynput.mouse 分别用于控制键盘和鼠标。
    • Controller 类用于模拟键盘和鼠标的输入操作。
    • Listener 类用于监听键盘和鼠标的事件。
  2. 模拟键盘输入

    • simulate_keyboard_input 函数展示了如何使用 KeyboardController 来模拟按键和文本输入。
  3. 模拟鼠标点击

    • simulate_mouse_click 函数展示了如何使用 MouseController 来移动鼠标指针并进行点击操作。
  4. 监听键盘事件

    • on_presson_release 函数分别处理按键按下和释放的事件。
    • 使用 KeyboardListener 启动键盘事件监听,并在按下 Esc 键时停止监听。
  5. 监听鼠标事件

    • on_moveon_clickon_scroll 函数分别处理鼠标移动、点击和滚动事件。
    • 使用 MouseListener 启动鼠标事件监听。

通过这些代码示例,你可以了解如何使用 pynput 库来控制和监听键盘与鼠标事件。

上一篇:demo在python中的含义

下一篇:python 设置全局变量

大家都在看

python时间格式

python ord和chr

python中的yield

python自定义异常

python list.pop

python的for i in range

npm config set python

python代码简单

python读取文件夹

python中turtle

Laravel PHP 深圳智简公司。版权所有©2023-2043 LaravelPHP 粤ICP备2021048745号-3

Laravel 中文站