.ipynb를 HTML로 손쉽게 변환하는 방법
Updated on

Jupyter 노트북은 코드, 설명, 그리고 시각적 출력을 혼합하는 데 완벽하지만—가끔은 _단순한 웹 페이지_가 필요할 때가 있습니다. 이메일 보내기, 호스팅하기, 또는 문서 사이트에 삽입하기 위해 .ipynb
파일을 독립적인 HTML로 변환하는 가장 빠른 방법은 Python이나 Jupyter에 대한 의존 없이 모든 브라우저에서 노트북을 볼 수 있게 만드는 것입니다.
아래에서 찾을 수 있습니다:
- 무료 및 프라이버시를 우선시하는 온라인 변환기 (가입 필요 없음, 데이터가 브라우저를 벗어나지 않음)
- 클릭 한 번으로 변환 가능한 CLI 튜토리얼 (모든 표준 Jupyter 설치와 호환—추가 도구 필요 없음)
- JupyterLab, VS Code, Google Colab에서의 원클릭 내보내기 옵션
- 대체 웹 변환기 옵션 간단히 살펴보기
- FAQ 및 문제 해결 팁
1부 | 온라인으로 .ipynb을 HTML로 변환하기 (무료)
Runcell의 온라인 ipynb → HTML 변환기
왜 Runcell인가?
- 브라우저‑전용 워크플로우 — 변환 작업이 완전히 브라우저 내에서 처리되며, 파일이 서버에 전달되지 않음 ([runcell.dev][1])
- 코드 및 출력에 문법 강조가 적용된 깔끔하고 모바일 친화적인 템플릿 ([runcell.dev][1])
- 무료 및 무제한 — 용량 제한이나 워터마크 없음
단계별 설명
-
최신 브라우저에서 도구 열기:
runcell.dev/tool/ipynb-to-html
-
노트북 업로드하기
.ipynb
파일을 드래그 앤 드롭하거나- “Upload Notebook” 클릭 후 파일 선택
-
잠시 기다리기 — 변환이 완료되면 실시간 미리보기를 확인 가능
-
“Download HTML”(또는 다운로드 아이콘 클릭)으로 파일 저장
-
생성된
*.html
공유 또는 호스팅 — 스타일시트, 자바스크립트, 이미지가 모두 내장되어 있으므로 오프라인에서도 동작
팁: Runcell은 플롯을 base‑64 이미지로 삽입하므로 Matplotlib / Seaborn 차트가 노트북처럼 정확히 렌더링됩니다.
2부 | Jupyter nbconvert
로 변환하기 (추가 도구 없음)
Jupyter가 이미 설치되어 있다면, 추가 패키지 필요 없이 내장된 nbconvert
유틸리티를 사용하여 간단히 HTML로 변환할 수 있습니다:
jupyter nbconvert --to html your_notebook.ipynb
자세한 단계별 안내
- 터미널 열기 (명령 프롬프트, PowerShell 또는 Bash)
- 노트북이 위치한 폴더로 이동 (
cd
명령어 사용) - 위 명령어 실행
- 같은 폴더 내에
your_notebook.html
이 생성됨
nbconvert
는 Jupyter Notebook, JupyterLab, Anaconda 배포판에 기본 제공되므로 보통은 바로 작동합니다 ([Nbconvert][2], [Stack Overflow][3]).
3부 | Jupyter UI에서 바로 내보내기
JupyterLab 또는 기존의 Notebook 인터페이스 내에서:
파일 → 다운로드 → HTML (.html)
Jupyter가 내부적으로 nbconvert
를 호출하여 HTML 파일을 자동으로 다운로드해줍니다 ([Saturn Cloud][4]).
4부 | VS Code에서 원클릭 내보내기
- VS Code 내장 노트북 에디터에서
.ipynb
열기 - • • • (더보기 메뉴) 클릭
- Export → HTML 선택
- 저장 위치 지정
확장 프로그램이 필요 없으며, VS Code에 기본 제공되는 Jupyter 확장 프로그램이 변환을 처리합니다.
5부 | Google Colab 워크플로우
Colab은 아직 공식 HTML 내보내기 버튼이 없습니다. 가장 간단한 방법은:
- 파일 → 다운로드 →
.ipynb
다운로드 - Runcell 또는
nbconvert
를 사용하여 로컬에서 HTML로 변환
6부 | 기타 무료 온라인 변환기 (간단히 살펴보기)
도구 | 주요 특징 |
---|---|
Vertopal | HTML4/HTML5 선택, 여백과 템플릿 조정 ([Vertopal][5]) |
CoolUtils | 매우 간단한 3클릭 워크플로우, 로그인 필요 없음 ([CoolUtils][6]) |
TheOnlineConverter | 정적 플롯 및 이미지 삽입, 파일 크기 제한 있음 ([Online Converter][7]) |
Runcell은 클라이언트 측에서 처리되어 가장 프라이버시 친화적입니다.
FAQ
1. HTML 대신 PDF를 선택하는 이유는?
HTML은 반응형이며, 검색이 쉽고, 블로그 또는 대시보드에 쉽게 삽입할 수 있습니다. 또한 일부 인터랙티브 위젯(제한적)이 유지되고, 복사‑붙여넣기 가능한 코드 블록도 지원됩니다.
2. Plotly, ipywidgets 등 인터랙티브 JavaScript 위젯도 작동하나요?
Runcell과 nbconvert
는 가능할 때 위젯 JavaScript를 삽입합니다. 일반적으로 Plotly 차트는 거의 문제없이 작동하며, 복잡한 ipywidgets는 정적 출력으로 대체될 수 있습니다.
3. 다수의 노트북을 일괄 변환하려면 어떻게 하나요?
nbconvert
를 루프로 돌리기:
for f in *.ipynb; do jupyter nbconvert --to html "$f"; done
4. HTML 파일 크기가 너무 큰데 어떻게 줄이나요?
크게 용량을 차지하는 원인은 인라인 이미지입니다. 노트북 내에서 plt.savefig(..., dpi=80)
호출하거나 이미지를 .jpg
로 변환 후 내보내기를 추천합니다.