Computer >> 컴퓨터 >  >> 프로그램 작성 >> Python

Python에서 pynput 라이브러리를 사용하여 마우스와 키보드를 제어하는 ​​방법

<시간/>

소개

Pinput 라이브러리를 사용하면 키보드 및 마우스와 같은 입력 장치를 제어하고 모니터링/들을 수 있습니다.

pynput.mouse pynput.keyboard 동안 마우스를 제어하고 모니터링할 수 있습니다. 키보드를 제어하고 모니터링할 수 있습니다.

이 기사에서는 커서를 특정 위치로 이동하고, 클릭을 자동화하고, 키보드에서 키 입력을 시뮬레이션합니다.

더 이상 고민하지 않고 시작하겠습니다.

시작하기

pynput 이후 모듈은 Python과 함께 제공되지 않으므로 pip 패키지 관리자를 사용하여 수동으로 다운로드하여 설치해야 합니다.

이렇게 하려면 터미널을 실행하고 아래 명령을 사용하세요.

pip install pynput

라이브러리가 성공적으로 다운로드 및 설치되면 다양한 모듈을 Python 스크립트로 가져올 수 있습니다.

키보드와 마우스 모두에 대한 다양한 모듈을 가져올 것이기 때문에 import 문에 대해서는 나중에 논의할 것입니다.

마우스 제어

Python을 사용하여 마우스를 제어하고 시뮬레이션하려면 pynput 라이브러리에서 마우스 모듈을 가져와야 합니다. 클릭과 움직임도 시뮬레이션할 것이므로 모듈과 함께 가져올 것입니다.

from pynput.mouse import Button, Controller

먼저 Controller() 메서드를 사용하여 화면에서 마우스를 이동합니다.

mouse = Controller()

이제 화면의 아무 위치로나 마우스를 이동하려면 좌표만 입력하면 됩니다.

mouse.position = (50,60)

마우스가 이동한 위치를 확인하려면 인쇄할 수 있습니다.

print('Current mouse position −> {0}'.format(mouse.position))

현재 위치를 기준으로 마우스를 이동하려면 이동 기능을 사용하세요.

mouse.move(30,15)

버튼 누름을 시뮬레이션하려면

mouse.press(Button.left)
mouse.release(Button.left)
mouse.press(Button.right)
mouse.release(Button.right)

더블 클릭의 경우

를 사용하십시오.
mouse.click(Button.left, 2)

pynput을 사용하여 스크롤을 시뮬레이션할 수도 있습니다.

mouse.scroll(0,2)

이렇게 하면 두 단계 아래로 스크롤되며 x 좌표는 왼쪽에서 오른쪽으로 스크롤을 탐색하는 데 사용되며 y 좌표는 위에서 아래로 사용됩니다.

예시

from pynput.mouse import Button, Controller
mouse = Controller()
mouse.position = (50,60)
print('Current mouse position −> {0}'.format(mouse.position))
mouse.move(30,15)
mouse.press(Button.left)
mouse.release(Button.left)
mouse.press(Button.right)
mouse.release(Button.right)
mouse.click(Button.left, 2)
mouse.scroll(0,2)

위의 방법을 사용하면 기본 좌표 지오메트리를 사용하여 페인트에 모양 그리기를 시뮬레이션할 수 있습니다.

키보드 제어

먼저 필요한 모듈과 기능을 가져옵니다. pynput 라이브러리 내의 키보드 모듈에서 Key 및 Controller 기능을 사용할 것입니다.

From pynput.keyboard import Key, Controller

컨트롤러 방법을 사용하여 키보드를 제어하고 키 입력을 시뮬레이션합니다.

keyboard = Controller()

이제 키 입력을 시뮬레이션하기 위해 프레스 및 릴리스 방법이 있습니다.

keyboard.press('a')
keyboard.release('a')

이것은 대문자를 포함한 모든 알파벳에 대해 작동합니다. 대문자의 경우 "a" 대신 "A"를 사용합니다.

ctrl, alt, space 등과 같은 다른 키 누름을 시뮬레이션할 수도 있습니다.

keyboard.press(Key.space)
keyboard.release(Key.space)
keyboard.press(Key.ctrl)
keyboard.release(Key.ctrl)

문장이나 단어를 한 번에 입력하는 것을 시뮬레이션하고 싶다면 type 기능을 사용할 수 있습니다.

keyboard.type('Hello World!!')

이것이 기본적으로 Python에서 키보드 장치를 제어하거나 시뮬레이션하는 방법입니다.

예시

from pynput.keyboard import Key, Controller
keyboard = Controller()
keyboard.press('a')
keyboard.release('a')
keyboard.press(Key.space)
keyboard.release(Key.space)
keyboard.press(Key.ctrl)
keyboard.release(Key.ctrl)
keyboard.type('Hello World!!')

결론

이제 Python의 pynput 라이브러리를 사용하여 키보드 및 마우스 입력 장치를 시뮬레이션하는 방법을 알게 되었습니다.

이를 사용하여 클리커 게임에서 클릭 동작을 수행하는 자동화된 봇을 구축하고 다양한 형태의 메시지를 한 번에 보내는 스팸 봇을 구축할 수 있습니다. 이 방법을 사용하여 모든 종류의 자동화 도구를 구축할 수 있으므로 응용 프로그램은 매우 무궁무진합니다.

스팸봇 미니 프로젝트 - https://github.com/SVijayB/Spam−botz

pynput에 대해 더 읽고 다양한 다른 기능을 탐색하려면 −

에서 공식 문서를 확인할 수 있습니다.

https://pynput.readthedocs.io/en/latest/index.html.