Skip to main content

hwp2hwpx

Convert HWP files to HWPX format — the only pip install-able HWP→HWPX converter.

HWP is the legacy binary format used by Hangul (한글), the dominant word processor in South Korea. HWPX is the modern XML-based format (OWPML/ODF-like ZIP archive). This package converts between them programmatically — no Hangul installation or GUI required.

🇰🇷 한국어

Why?

Tool What it does Limitation
Hangul GUI Open HWP → Save As HWPX Manual, not scriptable
HwpxConverter.exe Bundled with Hangul, GUI only No CLI, Windows only
kordoc Parses HWP → Markdown/JSON Extracts content, doesn't convert format
hwp2hwpx ← this Converts HWP → HWPX (valid ZIP/XML) Needs Java runtime

If you need to read HWP content → use kordoc. If you need a real HWPX file you can open/edit in Hangul → use this.

Install

pip install hwp2hwpx

Requires Java Runtime (JRE) 8+:

# Windows
winget install EclipseAdoptium.Temurin.21.JDK

# macOS
brew install temurin

# Linux (Debian/Ubuntu)
apt install default-jre

Usage

CLI

# Single file
hwp2hwpx document.hwp

# Multiple files
hwp2hwpx *.hwp

# Output directory
hwp2hwpx document.hwp -o output/

# Recursive folder conversion
hwp2hwpx ./documents/ -r

Python API

from hwp2hwpx import convert, convert_batch

# Single file
output_path = convert("document.hwp")
output_path = convert("document.hwp", "output.hwpx")

# Batch
results = convert_batch(["a.hwp", "b.hwp"], output_dir="output/")
for input_path, output_path, error in results:
    if error:
        print(f"FAIL: {input_path}: {error}")
    else:
        print(f"OK: {output_path}")

How it works

Bundles neolord0/hwp2hwpx Java library as a fat JAR:

  • hwplib — reads HWP binary (OLE2/CFB compound document)
  • hwpxlib — writes HWPX XML (ZIP archive with OWPML structure)

Pure file-format conversion. No Hangul installation, no COM API, no DRM issues.

Korean file paths on Windows are automatically handled via temp-file workaround (JVM encoding issue bypass).

Output format

The output HWPX is a standard ZIP archive containing:

META-INF/container.xml
Contents/header.xml
Contents/section0.xml
Contents/section1.xml
...

Fully compatible with Hangul 2020+ and any OWPML-aware tool.

License

Apache License 2.0

Based on Java libraries by neolord0:


한국어

HWP(한글 워드프로세서) 파일을 HWPX(OWPML) 형식으로 변환하는 Python 패키지.

pip install hwp2hwpx 한 줄로 설치, 바로 사용. 한글 프로그램 설치 불필요.

설치

pip install hwp2hwpx

Java 필요: winget install EclipseAdoptium.Temurin.21.JDK

사용법

hwp2hwpx 문서.hwp
hwp2hwpx *.hwp -o 출력폴더/
from hwp2hwpx import convert
convert("문서.hwp")

kordoc과의 차이

  • kordoc: HWP를 읽어서 마크다운/JSON으로 추출 (텍스트 파싱)
  • hwp2hwpx: HWP를 HWPX 파일로 변환 (한글에서 열 수 있는 완전한 문서)

Metadata

Release files for hwp2hwpx 1.0.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for hwp2hwpx 1.0.1
File Size Uploaded
hwp2hwpx-1.0.1.tar.gz 2.2 MB Details

Built distribution (wheel)

Table of built distributions (wheels) for hwp2hwpx 1.0.1
File Interpreter ABI Platform
hwp2hwpx-1.0.1-py3-none-any.whl Python 3 none any Details

Total release size: 4.4 MB

Release files / hwp2hwpx-1.0.1.tar.gz

Download URL hwp2hwpx-1.0.1.tar.gz
Size 2.2 MB
Tags Source
SHA-256 checksum
How to use checksums
e419a1d97b9547bf3c0d365adbc41696990b7fa96b5d5d8d08580875cb719a23
BLAKE2b-256 checksum
How to use checksums
9980fa9aba1c796bfb01db64cf887b1fa03cc180466b813afd4ed4d18cdfc0be
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.13.2

Release files / hwp2hwpx-1.0.1-py3-none-any.whl

Download URL hwp2hwpx-1.0.1-py3-none-any.whl
Size 2.2 MB
Tags Python 3
SHA-256 checksum
How to use checksums
e44606b65d840a33ceae42272194f1ae63665676fa01ea88bd763fede72798ea
BLAKE2b-256 checksum
How to use checksums
43b50e6ff236cc92db5a15afd9b38b34c7bf219ee7648365daab80f31e080dbd
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.13.2

Release history Release notifications | RSS feed

This release

1.0.1 This release

2 release files

1.0.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page