• 网赌被黑找腾龙D哥出黑【微信:gm4927 QQ:861122225】

    小姐姐
    关注公众号:「Python专栏」,后台回复「小姐姐」,获取全套代码!!!

    Python专栏二维码

    还记得曾经为了刷大话西游而下载了按键精灵,然后论坛上搜了各种分辨率的脚本么?

    还记得春节为了刷回家的高铁票,自己写了按键精灵的脚本么?

    现在python有一个神奇的库,我们不用再去模拟复杂的按键精灵了!监控鼠标、键盘,甚至是……

    pynput这个库让你可以控制和监控输入设备。

    对于每一种输入设备,它包含一个子包来控制和监控该种输入设备:

    pynput.mouse:包含控制和监控鼠标或者触摸板的类。

    pynput.keyboard:包含控制和监控键盘的类。

    上面提到的子包都已被引入到pynput库中。要使用上面的子包,从pynput中引入即可。

    from pynput import mouse, keyboard

    接下来就跟着小胖一起来看下如何玩转鼠标和键盘吧。

    1. 控制鼠标

    使用pynput.mouse控制鼠标

    from pynput.mouse import Controller, Button
    
    mouse = Controller()
    
    # 获取当前鼠标位置
    print(f'当前小胖的鼠标位置是: {mouse.position}')
    
    # 设置鼠标位置
    mouse.position = (10, 20)
    print(f'现在小胖把鼠标移动到 {mouse.position}')
    
    # 使用相对距离,移动当前鼠标
    mouse.move(5, -5)
    
    # 按下鼠标左键,释放鼠标左键
    mouse.press(Button.left)
    mouse.release(Button.left)
    
    # 向下滚动2格
    mouse.scroll(0, 2)
    

    效果如图

    python

    2. 监控鼠标事件

    使用pynput.mouse.Listener监控鼠标事件

    from pynput import mouse
    
    def on_move(x, y):
       print(f'鼠标移动到坐标 {(x, y)}')
    
    def on_click(x, y, button, pressed):
       print(f"{'按下' if pressed else '释放'} ,当前位置是: {(x, y)}")
       if not pressed:
           # 停止监听
           return False
    
    def on_scroll(x, y, dx, dy):
       print(f"滑动鼠标, {'向下' if dy < 0 else '向上'} at {(x, y)}")
    
    # 一直监听事件,直到鼠标释放
    with mouse.Listener(
           on_move=on_move,
           on_click=on_click,
           on_scroll=on_scroll) as listener:
       listener.join()
    

    效果如图

    python
    鼠标事件监听器是一个线程,所有的回调函数都会在独立的线程中运行。

    调用pynput.mouse.Listener.stop,发起StopException异常,或者回调函数中返回False都会停止事件的监听。

    3. 控制键盘

    使用pynput.keyboard.Controller控制键盘

    from pynput.keyboard import Key, Controller
    
    keyboard = Controller()
    
    # 按下并释放空格
    keyboard.press(Key.space)
    keyboard.release(Key.space)
    
    # 按下并释放小写字母a
    keyboard.press('a')
    keyboard.release('a')
    
    # 2种方式输入大写A
    keyboard.press('A')
    keyboard.release('A')
    with keyboard.pressed(Key.shift):
       keyboard.press('a')
       keyboard.release('a')
    
    # 直接操作键盘输入Hello World
    keyboard.type('Hello World')
    

    4. 监控键盘事件

    使用pynput.keyboard.Listener监听键盘事件

    from pynput import keyboard
    
    def on_press(key):
       try:
           print(f'字母 {key.char} 被按下了')
       except AttributeError:
           print(f'特殊的键 {key} 被按下了')
    
    def on_release(key):
       print(f'{key} 被释放了')
       if key == keyboard.Key.esc:
           # 停止监听
           return False
    
    # 一直监听键盘事件,直到停止
    with keyboard.Listener(
           on_press=on_press,
           on_release=on_release) as listener:
       listener.join()
    

    键盘事件监听器是一个线程,所有的回调函数都会在独立的线程中运行。

    调用pynput.keyboard.Listener.stop,发起StopException异常,或者回调函数中返回False都会停止事件的监听。

    传递给回调函数的key参数是一个pynput.keyboard.Key类的实例。当特殊按键和普通按键一起按下时,数字字母按键的值会被放置在pynput.keyboard.KeyCode类的实例中,对于不知道的按键会返回None。

    接下来就是发挥你们能力的时候了,说不定写个脚本,用exe包装一下,命名为种子收发器?哈哈哈哈,然后就可以监听起来了?

    网赌被黑找腾龙D哥出黑【微信:gm4927 QQ:861122225】

    发布评论

    分享到:

    专业出黑网赌被黑追款

    我的微信号:18488351249 (左侧二维码扫一扫)欢迎添加!

    [译]使用MVI打造响应式APP(四):独立性UI组件
    你是第一个吃螃蟹的人
    发表评论

    ◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。