python模拟键盘鼠标操作2,pynput库

python模拟键盘鼠标操作有几种方法,这里讲pynput库

#导入pynput控制鼠标的模块
from pynput import mouse

#获取鼠标的操控对象
control = mouse.Controller()
#获取当前鼠标的位置
print(control.position)
#改变鼠标的位置
control.position = (100, 100)
#移动鼠标的位置(x,y)
control.move(10, 10)

#鼠标按键类型
#左键 mouse.Button.left
#右键 mouse.Button.right
#中键 mouse.Button.middle
#按下鼠标左键
control.press(mouse.Button.left)
#释放鼠标左键
control.release(mouse.Button.left)
#单击鼠标左键
control.click(mouse.Button.left, 1)
#双击鼠标左键
control.click(mouse.Button.left, 2)
#鼠标滚轮向上滚动
control.scroll(0, -100)
#鼠标滚轮向下滚动
control.scroll(0, 100)

#鼠标事件监听
from pynput import mouse
# 鼠标move监听
def on_move(x, y):
    print(f'Current position: ({x}, {y})')
# 鼠标click监听
def on_click(x, y, button, pressed):
    print(f'Click position: ({x}, {y})')
    print(f'Click button: {button}')
    print(f'Click state: {"Pressed" if pressed else "Release"}')
# 鼠标滚轮scroll监听
def on_scroll(x, y, dx, dy):
    print(f'Scroll position: ({x}, {y})')
    print(f'Scroll direction: ({dx}, {dy})')
with mouse.Listener(on_move=on_move, on_click=on_click, on_scroll=on_scroll) as listener:
    listener.join()

#######################3
#键盘控制
#键盘模拟控制
#导入pynput控制键盘的模块
from pynput import keyboard
from pynput.keyboard import Key
from pynput.keyboard import Controller
control = Controller()

#普通按键
#按下a键
control.press(“a”)
#释放a键
control.release(“a”)

#特殊按键
#按下F1
control.press(Key.f1)
#释放F1
control.release(Key.f1)

#输出字符串’hello word.’
control.type('hello word.')

#键盘事件监听
from pynput import keyboard

def on_press(key):
    """按下按键时执行。"""
    try:
        print('alphanumeric key {0} pressed'.format(
            key.char))
    except AttributeError:
        print('special key {0} pressed'.format(
            key))
    #通过属性判断按键类型。

def on_release(key):
    """松开按键时执行。"""
    print('{0} released'.format(
        key))
    if key == keyboard.Key.esc:
        # Stop listener
        return False

# Collect events until released
with keyboard.Listener(
        on_press=on_press,
        on_release=on_release) as listener:
    listener.join()

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

'Steven

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值