반응형
1. 특정 키가 눌렸을 때 동작하기
import keyboard
def on_key_event(e):
if e.event_type == keyboard.KEY_DOWN: # 키가 눌렸을 때
print(f"Key {e.name} was pressed")
# 'a' 키가 눌릴 때 동작
keyboard.hook_key('a', on_key_event)
# 무한 루프로 유지
keyboard.wait('esc') # 'esc' 키를 누를 때까지 대기
2. 특정 키 조합이 눌렸을 때 동작하기
import keyboard
def on_key_combination(e):
if keyboard.is_pressed('ctrl') and keyboard.is_pressed('c'):
print("Ctrl+C was pressed")
keyboard.hook(on_key_combination)
# 무한 루프로 유지
keyboard.wait('esc') # 'esc' 키를 누를 때까지 대기
3. 모든 키의 이벤트 감지하기
import keyboard
def on_any_key(e):
print(f"Key {e.name} was {e.event_type}")
keyboard.hook(on_any_key)
# 무한 루프로 유지
keyboard.wait('esc') # 'esc' 키를 누를 때까지 대기
4. 특정 키 누르기/떼기 감지
import keyboard
# 'a' 키가 눌리면 메시지 출력
keyboard.on_press_key('a', lambda _: print("Key 'a' pressed"))
# 'b' 키가 떼지면 메시지 출력
keyboard.on_release_key('b', lambda _: print("Key 'b' released"))
keyboard.wait('esc') # 'esc' 키를 누를 때까지 대기
5. 특정 키 조합 감지
import keyboard
# Ctrl + C 조합이 눌리면 메시지 출력
keyboard.add_hotkey('ctrl+c', lambda: print("Ctrl+C pressed"))
keyboard.wait('esc') # 'esc' 키를 누를 때까지 대기
6. 여러 키 동시에 누를 때 감지
import keyboard
# 'a'와 'b' 키가 동시에 눌리면 메시지 출력
keyboard.add_hotkey('a+b', lambda: print("Keys 'a' and 'b' pressed together"))
keyboard.wait('esc') # 'esc' 키를 누를 때까지 대기
7. 모든 키보드 이벤트 감지
import keyboard
def on_key_event(e):
print(f"Key {e.name} {'pressed' if e.event_type == keyboard.KEY_DOWN else 'released'}")
keyboard.hook(on_key_event)
keyboard.wait('esc') # 'esc' 키를 누를 때까지 대기
8. 특정 키가 일정 시간 동안 눌린 경우 감지
import keyboard
# 'a' 키가 3초 동안 눌리면 메시지 출력
keyboard.on_press_key('a', lambda _: print("Key 'a' pressed for 3 seconds"), suppress=True, timeout=3)
keyboard.wait('esc') # 'esc' 키를 누를 때까지 대기
반응형
'python3 selenium' 카테고리의 다른 글
python3 selenium 설치된 라이브러리 no module 오류 해결 방법 (0) | 2023.12.29 |
---|---|
python 스크롤 내리기 (0) | 2023.12.21 |
python selenium 로그인 입력 방법 (0) | 2023.12.18 |
python selenium popup accept, dismiss click 확인, 아니오 버튼 클릭 (0) | 2023.12.10 |
python PYQT5 save, load setting Value(QLineEdit,QDateEdit,QTimeEdit,QComboBox,QSpinBox,,Q CheckBox,QradioButton) (1) | 2023.12.10 |