Computer >> 컴퓨터 >  >> 프로그래밍 >> Python

Python keyboard 모듈 완벽 가이드: 키 입력 제어와 자동화 방법

Python keyboard 모듈이란?

이 글에서는 Python 3.x 이상 버전에서 사용할 수 있는 keyboard 모듈의 개념과 실전 활용 방법에 대해 알아보겠습니다. keyboard 모듈은 키보드 입력을 프로그래밍 방식으로 감지하고 제어할 수 있게 해주는 강력한 라이브러리로, 매크로 제작이나 키보드 자동화 작업에 널리 활용됩니다.

개발 환경 및 설치

권장 개발 환경은 Jupyter Notebook입니다. 대화형 환경에서 키 입력 결과를 바로 확인할 수 있어 학습에 적합합니다.

keyboard 모듈은 pip를 통해 간단하게 설치할 수 있습니다.

>>> pip install keyboard

keyboard 모듈의 주요 기능

  • 특정 키 동작 차단: 원하는 키의 기본 동작을 차단하거나 무시할 수 있습니다.
  • 클릭 리스너 지원: on click listener를 통해 키보드로부터 들어오는 입력 이벤트를 관리할 수 있습니다.
  • 크로스 플랫폼 호환성: Windows, Linux 등 다양한 운영체제에서 동일하게 작동합니다.
  • 특수 키 및 핫키 지원: Shift, Ctrl 같은 특수 키와 조합 단축키(hotkey)를 지원합니다.

기본 사용 예제

이제 실제 코드로 keyboard 모듈을 어떻게 활용하는지 살펴보겠습니다.

예제 1

import keyboard

# 텍스트를 입력합니다
keyboard.write("Tutorialspoint\n")
# Shift 키와 함께 눌러 대문자를 입력합니다
keyboard.press_and_release('shift + o, shift + y, \n')
keyboard.press_and_release('k, j')

# Ctrl 키가 눌릴 때까지 실행을 대기합니다
keyboard.wait('Ctrl')

실행 결과

Tutorialspoint
O Y
k j

예제 2

import keyboard

# 텍스트를 입력합니다
keyboard.write("tutor\n")
# Shift 키와 함께 눌러 대문자를 입력합니다
keyboard.press_and_release('shift + a, shift + w, \n')
keyboard.press_and_release('q, u')

# Enter 키가 눌릴 때까지 실행을 대기합니다
keyboard.wait('Enter')

실행 결과

tutor
A W
q u

위 예제에서 볼 수 있듯이 write() 함수는 문자열을 그대로 타이핑하듯 입력하고, press_and_release() 함수는 지정한 키 조합을 순서대로 눌렀다 떼는 동작을 수행합니다. 또한 wait() 함수는 특정 키가 입력될 때까지 프로그램의 진행을 일시 중지하는 역할을 합니다.

record와 play 메서드 활용하기

keyboard 모듈에는 record()play() 메서드도 포함되어 있으며, 콘솔에서 바로 임포트하여 사용할 수 있습니다. 이 메서드들을 활용하면 실제 키보드 입력 활동을 녹화하고 재생할 수 있어 반복적인 입력 작업을 자동화하는 데 매우 유용합니다.

더 자세한 내용은 공식 문서인 https://pypi.org/project/keyboard/ 를 참고하시기 바랍니다.

마무리

지금까지 Python 3.x 이상 버전에서 keyboard 모듈을 활용하는 방법에 대해 알아보았습니다. 키 입력 시뮬레이션, 핫키 처리, 입력 녹화 및 재생 등 다양한 기능을 통해 키보드 관련 자동화 작업을 손쉽게 구현할 수 있습니다. 실무에서 매크로나 UI 테스트 자동화를 고려하고 있다면 keyboard 모듈을 적극적으로 활용해 보시기 바랍니다.