PYTHON 한글자동화

[ 한글 자동화 ] 한글 파일 불러오기, 특정 한글 파일 실행하기

나루하루001 2025. 5. 10. 17:59
반응형

 들어가며

 

이번 블로그에서는 한글 문서를 불러와 띄우는 방법을 소개하려 합니다.

 

이번 코드 역시 매우 간단합니다.

 

 개발문서 살펴보기

 

먼저 한글 프로그램을 실행하는 방법은

아래 링크를 확인하시면 됩니다.

※ 한글 프로그램 실행하기 : 한글 프로그램 실행하기

 

먼저 공식 개발 문서를 살펴보겠습니다.

먼저 기본이 되는

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) 블로그 목록
반응형