[ 한글 자동화 ] 한글 파일 불러오기, 특정 한글 파일 실행하기
들어가며
이번 블로그에서는 한글 문서를 불러와 띄우는 방법을 소개하려 합니다.
이번 코드 역시 매우 간단합니다.
개발문서 살펴보기
먼저 한글 프로그램을 실행하는 방법은
아래 링크를 확인하시면 됩니다.
※ 한글 프로그램 실행하기 : 한글 프로그램 실행하기
먼저 공식 개발 문서를 살펴보겠습니다.
먼저 기본이 되는
HwpAutomation.pdf 파일을 찾아보겠습니다.
※ 한글 자동화 공식문서 : 한글 자동화를 위한 준비, 한글 자동화 공식 문서
한글 자동화 공식문서를 살펴보면
Open() 함수를 사용해 파일을 열 수 있다고 되어 있습니다.
문서를 읽어보면 명시되어 있지는 않지만,
별다른 설정 없이
해당 함수를 호출하고, 경로와 옵션을 지정하면
문서를 열 수 있는 것으로 보입니다.
코드 작성하기
먼저 한글 프로그램을 실행하는 코드를 작성합니다.
참고로 기존 코드에서
한글을 실행하는 함수 이름을 헷갈리지 않게 바꾸었습니다.
import win32com.client as win32
import os, shutil
def execute_hwp(hwp_visible=True):
try:
hwp = win32.gencache.EnsureDispatch('HWPFrame.HwpObject')
return hwp
except:
cache_dir = win32.gencache.GetGeneratePath()
if os.path.exists(cache_dir):
shutil.rmtree(cache_dir)
hwp = win32.gencache.EnsureDispatch('HWPFrame.HwpObject')
return hwp
finally:
if 'hwp' in locals():
hwp.XHwpWindows.Active_XHwpWindow.Visible = hwp_visible
if __name__ == "__main__":
hwp = execute_hwp()
위 코드를 실행하면 한글이 실행됩니다.
이제 특정 경로의 파일을 열어보겠습니다.
공식 문서를 살펴보면
Open() 함수는 세 개의 인자를 받을 수 있습니다.
첫 번째 인자는 파일의 경로이고 필수 인자입니다.
두 번째 인자는 문서의 형식이고 선택 인자입니다.
세 번째 인자는 세부옵션이고 선택 인자입니다.
깊게 들어가지는 않고
간단하게 HWP 파일을 열기 위해 코드를 작성해 보겠습니다.
HWP 파일을 열기 위해서는
첫 번째 인자에 파일 경로를 지정하고
두 번째 인자와 세 번째 인자는 None을 지정하면 됩니다.
이렇게만 지정해도 한글 문서를 조작하는 데는 문제가 없습니다.
def load_hwp(hwp, path):
hwp.Open(path, None, None)
간단하게 작성된 파일 불러오기 함수입니다.
대소문자 구분을 확실히 해야 합니다.
이제 이 함수를 호출해 보겠습니다.
if __name__ == "__main__":
hwp = execute_hwp()
load_hwp(hwp, r"C:\Users\karur\Desktop\한글 파일 불러오기 테스트.hwp")
위 코드를 실행하면
해당 경로에 있는 파일이 열리게 됩니다.
조금 더 코드를 보완하면
전달된 경로에 정말로 파일이 존재하는지 확인하는 코드를 추가하면 좋을 것 같습니다.
os 라이브러리를 사용하면 됩니다.
※ os 라이브러리 기본 : 파이썬 OS 라이브러리 기본 내용 소개 및 정리
간단하게 파일이 있는지 확인하고 없으면 메시지를 출력하는 코드입니다.
def load_hwp(hwp, path):
if not os.path.exists(path):
print("파일이 존재하지 않습니다.")
else:
hwp.Open(path, None, None)
마치며
이번 블로그에서는 한글 문서를 불러오는 방법에 대해 알아보았습니다.
한글 자동화는 생각보다 어렵지는 않습니다.
한글을 잘 다루시는 분이라면
조금만 공부를 하셔도 개발 문서의 내용이 무엇을 의미하는지
더 쉽게 아실 수 있을 겁니다.
[ 파이썬 관련 블로그 글 목록 ]
파이썬(Python) 블로그 목록