본문 바로가기
아래아한글 자동화/pyhwpx 사용법

[pyhwpx] 페이지별로 분할 저장하기

by 일코 2024. 2. 10.

100장의 문서가 있다고 할 때
페이지별로 1.hwp, 2.hwp, ..., 100.hwp로 저장하는 예제를 진행해보자.

표창장100ea.hwp
0.18MB

위 문서를 다운받은 후
해당 폴더에서 쥬피터노트북을 실행한다.
(본 포스팅에서는 '바탕화면'이라고 가정)

 

아래 명령어를 실행한다.

import os
from pyhwpx import Hwp


# 바탕화면으로 이동
os.chdir(
    os.path.join(
        os.environ["USERPROFILE"],
        "desktop")
)


# 분할파일 저장할 폴더 생성
os.mkdir("result")


# 원본문서 열기
hwp = Hwp()
hwp.open("표창장100ea.hwp")


# 한페이지씩 잘라서 저장하기
hwp.add_doc()  # 새 문서 열림
hwp.switch_to(0)  # 원본 문서에서
for i in range(1, hwp.PageCount+1):  # 1~100페이지까지
    hwp.goto_page(i)  # i번째 페이지로 이동
    hwp.CopyPage()  # 페이지 복사해서
    hwp.switch_to(1)  # 새 문서에다가
    hwp.PastePage()  # 끼워넣기 한 후
    hwp.MoveDocBegin()  # 기존의 1페이지(빈 페이지)로 가서
    hwp.DeletePage()  # 빈 페이지 삭제 후
    hwp.save_as(f"./result/{i}.hwp")  # 다른 이름으로 저장
    hwp.switch_to(0)  # 다시 원본문서로 이동
    
print("끝.")

시연영상은 아래.

 

끝. (1분 정도 소요)

result 폴더에 가보면,

분할작업 완료!

댓글