테스트 사이트 - 개발 중인 베타 버전입니다

[Python] HWP 파일을 불러오기

· 3년 전 · 6313

리눅스 백엔드에서 HWP 파일을 처리하는 것은 상당히 골치아픈 일입니다.

다행히 Python에는 HWP 파일을 핸들링하는 모듈도 있습니다 ^^

 

1. Olefile

[code]

import olefile 

 

= olefile.OleFileIO('한컴파일.hwp'# HWP 파일 열기

encoded_text = f.openstream('PrvText').read() # PrvText 스트림의 내용 꺼내기

decoded_text = encoded_text.decode('UTF-16'# 유니코드를 UTF-16으로 디코딩

print(decoded_text)

[/code]

 

Olefile 모듈은 Microsoft OLE2 파일을 조작하기 위한 모듈로서

위와 같은 방법으로 한컴 HWP 파일도 불러올 수 있습니다 ^^

 

 

2. PyHWP의 HWP5TXT

[code]

from subprocess import Popen, PIPE

 

file = '한컴파일.hwp'

process = Popen(['hwp5txt'file], stdout=PIPE, stderr=PIPE)

stdout, stderr = process.communicate()

data = stdout.decode('utf-8')

print(data)

[/code]

 

PyHWP 모듈은 Olefile에 dependent하기 때문에

Olefile에서 제대로 불러오지 못하는 HWP 파일의 경우

PyHWP에서도 마찬가지로 잘 불러올 수 없다는 문제가 있습니다.

그러한 경우에 위와 같이 PyHWP 설치시 함께 설치되는 hwp5txt.exe 파일을 이용하면

대부분의 문제를 해결할 수 있습니다 ^^

다만 EXE 파일이므로 윈도우 환경에서만 실행 가능하다는 한계가 있습니다.

댓글 작성

댓글을 작성하시려면 로그인이 필요합니다.

로그인하기

게시글 목록

번호 제목
16619
16618
16612
16603
16598
16589
16578
16571
16563
16554
16546
16534
16527
16520
16513
16510
16505
16498
16490
16486
16482
16465
16458
16456
16448
16447
16440
16439
16438
16430