Cộng đồng Hỏi & Đáp của Inflearn
mouse listener 관련해서 질문 드립니다.
Đã giải quyết
Viết
·
375
1
안녕하세요,
wsl2 ubuntu 환경에서 스크롤 녹화하는 실습 코드를 실행하는데 클릭하거나 스크롤을 해도 출력이 안되고 파일에 저장이 안되고 있습니다. 혹시 pynput라이브러리 리눅스 환경에서 사용하려면 추가로 설정 해야 하는 부분이 있을까요?
Câu trả lời 2
0
pynput 라이브러리는 일반적으로 Windows와 macOS에서 잘 작동하지만, WSL (Windows Subsystem for Linux) 환경에서는 몇 가지 제약 사항이 있을 수 있습니다. 특히, GUI 이벤트를 캡처하는 데에는 제한이 있기 때문에 스크롤 녹화와 같은 작업은 어려울 수 있습니다.
만약 WSL2에서 스크롤 녹화를 시도하고 있다면, WSL2는 리눅스 커널 위에 구축된 가상 머신이기 때문에 리눅스 그래픽 환경을 완벽하게 지원하지 않을 수 있습니다. 따라서 리눅스 환경에서의 스크롤 녹화는 일반적으로 어려운 작업입니다.
그러나 만약 터미널에서의 키보드 이벤트나 터미널 출력을 녹화하려는 것이라면, pynput 대신 keyboard 또는 pyautogui와 같은 라이브러리를 시도할 수 있습니다.
강의에서 마우스를 녹화한다는 아이디어를 기반으로
pynput라이브러리 코드를 keyboard 혹은 pyautogui 라이브러리의 기능으로 코드를 변경하시면 됩니다 !
keyboard 라이브러리를 사용하여 간단한 키보드 이벤트를 감지하고 출력하는 코드는 다음과 같습니다:
import keyboard
def on_key_event(e):
print(f"Key {e.name} {e.event_type}")
keyboard.hook(on_key_event)
keyboard.wait("esc")
0
안녕하세요, 인프런 AI 인턴입니다.
tma님, pynput 라이브러리를 리눅스 환경에서 사용하시려면 몇 가지 확인해야 할 사항이 있습니다.
먼저, 리눅스에서 pynput 라이브러리를 사용하려면 입력 모니터링에 대한 권한이 필요합니다. X 서버가 실행 중인 환경에서 리스너를 시작하기 전에 사용자가 입력을 모니터링할 수 있는 권한이 있어야 합니다. 권한 문제일 가능성이 있으니, 다음과 같이 시도해보시기 바랍니다.
터미널에서
sudo명령어를 사용하여 스크립트를 실행해보세요.sudo python3 your_script.py와 같이 입력하면 됩니다.사용자 권한이 충분하지 않은 경우, X 서버의 설정을 변경하여 권한을 부여할 수 있습니다.
또한, WSL2 상에서 GUI 어플리케이션을 제대로 실행하기 위해서는 추가적인 X 서버 설정이 필요한 경우가 많습니다 (예: VcXsrv, Xming).
파이썬과 pynput 라이브러리의 버전 호환성도 확인해보시기 바랍니다.
해당 부분들을 체크해 보신 후에도 문제가 해결되지 않는다면, 인프런의 강의 페이지 내 ‘문의하기’나 FAQ를 참고하시는 것도 좋을 것 같습니다.
별다른 설정 변경 없이도 리눅스 환경에서 정상 작동할 수 있도록 만들어진 라이브러리이기 때문에, 위의 사항들을 점검해 보신 후 문제가 지속된다면 인프런 FAQ 또는 해당 강좌의 질문 답변 게시판을 통해 추가적인 도움을 요청하시길 권장드립니다.
도움이 되셨길 바랍니다. 감사합니다.





