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()
导入模块:
pynput.keyboard
和 pynput.mouse
分别用于控制键盘和鼠标。Controller
类用于模拟键盘和鼠标的输入操作。Listener
类用于监听键盘和鼠标的事件。模拟键盘输入:
simulate_keyboard_input
函数展示了如何使用 KeyboardController
来模拟按键和文本输入。模拟鼠标点击:
simulate_mouse_click
函数展示了如何使用 MouseController
来移动鼠标指针并进行点击操作。监听键盘事件:
on_press
和 on_release
函数分别处理按键按下和释放的事件。KeyboardListener
启动键盘事件监听,并在按下 Esc
键时停止监听。监听鼠标事件:
on_move
、on_click
和 on_scroll
函数分别处理鼠标移动、点击和滚动事件。MouseListener
启动鼠标事件监听。通过这些代码示例,你可以了解如何使用 pynput
库来控制和监听键盘与鼠标事件。
上一篇:demo在python中的含义
下一篇:python 设置全局变量
Laravel PHP 深圳智简公司。版权所有©2023-2043 LaravelPHP 粤ICP备2021048745号-3
Laravel 中文站