개발공부/Python

키보드 매크로 (python keyboard macro) - 1

민둥곰 2021. 9. 22. 02:11

아시는분 부탁으로 키보드 매크로를 만들어야 했다.

 

요구사항 1: 한 어절을 정해진 시간단위로 입력

 

추가로 생각한 기능

1. 이미지 처리

2. 텍스트 파일 기반으로 저장된 내용 읽어와 키보드 매크로

3. 한글 파일 기반으로 텍스트 및 이미지 처리

 

현재 작성한 코드는

 

2. 텍스트 파일 기반으로 저장된 내용 읽어와 키보드 매크로만 구현

 

추후 기능 구현 예정

 

코드:

import pyautogui
import pygetwindow as gw
import time
import os
from io import open

# 프로그램 실행되는 파일 위치(디렉토리)
os_path = os.getcwd()

# 프로그램 실행되는 디렉토리 밑 파일 전체 저장
file_list = os.listdir(os_path)

# chrome 창 활성화를 위한 코드
win = gw.getWindowsWithTitle('Chrome')[0]

win.activate() # 해당 윈도우를 활성화

#파일 처리
for file in file_list :
	# txt 파일 확장자만 처리하기 전 변수 저장
	root,extension = os.path.splitext(file)

	# txt 파일 확장자만 읽어오기
	if extension == '.txt':
    
		# 한글의 경우 인코딩 오류가 나서 utf-8로 진행
		with open(file,'r', encoding='utf-8') as file_object:
			contents = file_object.read()
            
			# 어절 단위로 입력하기 위한 반복문
			for char in contents :
				#키보드 입력 매크로
				pyautogui.press(str(char))

				# 0.2초 단위로 입력
				time.sleep(0.2)