파이썬으로 한글파일을 조작하는 프로그램을 만들어보도록 하겠습니다.
먼저 이번 시간에는 한글파일을 열어서 프린트하는 간단한 프로그램입니다.
한글파일을 다루려면 먼저 win32com 라이브러리를 불러와야 합니다.
win32com은 파이썬에서 ActiveX 를 연결해주는 라이브러리인데요
이를 통하여 한글뿐만 아니라 엑셀도 조작이 가능합니다.(추후에 관련 글에서 설명하도록 하겠습니다.)
win32com 라이브러리는 pywin32라는 프로그램을 따로 설치해주셔야 이용이 가능한 라이브러리입니다.
구글이나 네이버에 'python win32com' 검색하시면 설치하시는 방법이 나오니 따라해주시면 됩니다.
다음으로 소스코드를 분석해보겠습니다.
import win32com.client as win32
win32com의 client 모듈을 win32 이름으로 불러왔습니다.
그럼 다음에 해야할 일은 한글 ActiveX를 읽어오는 겁니다.
음... 한글을 읽어오기 위해서는 한글 프로그램이 먼저 해당 PC에 깔려 있어야 합니다.
hwp=win32.gencache.EnsureDispatch("HWPFrame.HwpObject")
그러면 hwp 이름으로 한글을 조작할 수 있습니다.
그리고 읽어오고 싶은 한글파일 경로를 적어주시고 옵션에는 강제열기로 설정해줍니다.
C드라이브에 111.hwp파일이 있다고 하면
hwp.Open('c:\\111.hwp', "HWP", "forceopen:true")
그리고 프린트를 해야겠지요
hwp.HAction.GetDefault("Print", hwp.HParameterSet.HPrint.HSet)
이것은 프린트를 하겠다는 명령을 가져온겁니다.
그리고 해당 명령(프린트)를 실행해 줍니다.
hwp.HAction.Execute("Print", hwp.HParameterSet.HPrint.HSet)
프린트했으니 한글을 종료해야겠죠?
hwp.Quit()
이상으로 파이썬으로 한글파일을 읽어서 프린트하는 법을 알아보았습니다
다음 시간에는 한글파일 내의 특정 문구를 찾아 자동으로 바꿔주는 프로그램을 만들어 보겠습니다
보시다가 궁금하신 사항은 댓글로 남겨주세요
감사합니다
소스코드
import win32com.client as win32
hwp=win32.gencache.EnsureDispatch("HWPFrame.HwpObject")
hwp.Open('c:\\111.hwp', "HWP", "forceopen:true")
hwp.HAction.GetDefault("Print", hwp.HParameterSet.HPrint.HSet)
hwp.HAction.Execute("Print", hwp.HParameterSet.HPrint.HSet)
hwp.Quit()
'파이썬 > 한글 자동화' 카테고리의 다른 글
[파이썬] 한글파일 하나로 합치기 (3) | 2020.07.24 |
---|---|
[파이썬] 한글파일 내 그림 추출하기 (0) | 2020.07.22 |
[파이썬] 한글파일을 엑셀로 옮기기 (16) | 2020.07.20 |
[파이썬] 여러 한글파일 내 전화번호 삭제하기 (0) | 2020.07.15 |
[파이썬] 한글파일 내 특정 문자열 찾아 바꾸기 (0) | 2020.01.04 |