직장인

[회사원] 업무 코딩기록 - (PyHwpx)Hwp_Merge(2-1_병합(서식동일))

cyy1211 2024. 12. 24. 15:41
728x90
반응형

 

import os
from pyhwpx import Hwp

# 파일 경로 설정
folder_path = "C:\\Users\\user\\Desktop\\VSCode(python)\\(CODE)Pyhwpx\\raw"
output_folder_path = "C:\\Users\\user\\Desktop\\VSCode(python)\\(CODE)Pyhwpx\\result"  # 출력 파일 경로

# Hwp 객체 생성
try:
    hwp = Hwp()  # 한/글 시작
    print("Hwp 객체 생성 성공")
except Exception as e:
    print(f"Hwp 객체 생성 중 오류 발생: {e}")
    exit(1)  # 오류 발생 시 프로그램 종료

# 삽입할 문서 리스트 생성 (HWP 및 HWPX 파일 포함)
file_list = [i for i in os.listdir(folder_path) if i.lower().endswith((".hwp", ".hwpx"))]  # 지정한 폴더에서 .hwp 및 .hwpx 파일 목록

# HWP 파일 삽입
if not file_list:
    print("삽입할 HWP 또는 HWPX 파일이 없습니다.")
else:
    for i in file_list:
        file_path = os.path.join(folder_path, i)  # 전체 파일 경로 생성
        try:
            hwp.insert(file_path, move_doc_end=True)   # 순서대로 서식이 같은 문서 끼워넣기(hwp.insert)
            print(f"파일 '{i}' 삽입 성공")  # 성공 메시지 출력
        except Exception as e:
            print(f"파일 '{i}' 삽입 중 오류 발생: {e}")
           
# 최종 문서 저장
try:
    output_file_path = os.path.join(output_folder_path, "Merge.hwp")  # 저장할 파일 경로
    hwp.save_as(output_file_path)  # HWP 파일로 저장
    print(f"최종 문서가 '{output_file_path}'로 저장되었습니다.")
except Exception as e:
    print(f"문서 저장 중 오류 발생: {e}")
finally:
    hwp.quit()  # Hwp 객체 종료
   
print("문서 병합 완료")

※ 상기 코드는 일코(ilco)님 도움으로 작성되었습니다.

 

728x90
반응형