簡體   English   中英

Python 密鑰。 鑰匙

[英]Python Key. keys

嘿,我正在用 pyautogui 制作一個自動點擊器,但我不知道我可以為 Key 輸入的密鑰。 (變量開頭)我想把鼠標左鍵按下。 如果我只是放一個鍵,它會給我一個錯誤,所以是的,我在任何地方都找不到這個。

import pyautogui
from pynput.keyboard import *
from pynput import mouse
import random
#  ======== settings ========

delay = random.uniform(.03,.22)  # in seconds
resumeKey = Key.f4
pauseKey = Key.f6
exitKey = Key.esc


pause = True
running = True

def on_press(key):
    global running, pause

    if key == resumeKey:
        pause = False
        print("[Resumed]")
    elif key == pauseKey:
        pause = True
        print("[Paused]")
    elif key == exitKey:
        running = False
        print("[Exit]")
mouseLis = mouse.Listener(on_click = on_click)
mouseLis.start()
def on_click(x,y,button,pressed):
    if button == mouse.Button.left:
        pause = False


def main():
    lis = Listener(on_press=on_press)
    lis.start()

    while running:
        if not pause:
            delay = random.uniform(.03,.22)
            pyautogui.click(pyautogui.position())
            pyautogui.PAUSE = delay
    lis.stop()
mouseLis.stop()

if __name__ == "__main__":
    main()

鼠標需要自己的監聽器,據我所知,它沒有鍵盤的鍵綁定。 像這樣:(在此處的文檔中找到。)

from pynput import mouse

def on_click(x, y, button, pressed):
    # do something here

mouse_lis = mouse.Listener(on_click=on_click)
mouse_lis.start()

為了解決這個問題,我剛剛創建了另一個名為on_click的 function 來處理鼠標按鈕按下。

這個 function 是

def on_click(x,y,button,pressed):
    if button == mouse.Button.left:
        print("Output")

基本上它需要單擊,如果單擊的按鈕是鼠標左鍵,那么它會在 if 語句中打印 output。 如果您願意,還必須處理其他三個參數。

在你的主要 function 添加

mouseLis = mouse.Listener(on_click = on_click)
mouseLis.start()

這將創建實際的鼠標偵聽器,然后該偵聽器將用於偵聽鼠標點擊。

在你的主要 function 的末尾,一定要包括

mouseLis.stop()

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM