SharePoint 페이지 Markdown 내보내기
Microsoft 365를 쓰는 팀은 수년치 조직 지식을 SharePoint에 쌓아 둡니다. 회의 노트, 프로젝트 위키, 엔지니어링 문서, 인사 정책까지 전부 그곳에 쌓입니다. 그런데 그 내용을 다른 곳으로 — 정적 사이트나 AI 지식 베이스, Markdown 중심 문서 시스템으로 — 옮기려 하면, SharePoint에는 내보내기 버튼이 없습니다.
이 가이드는 SharePoint 페이지에서 깔끔한 Markdown을 꺼내는 현실적인 방법을 다룹니다.
왜 SharePoint를 Markdown으로 내보내야 할까요?
- SharePoint에서 이사 — Notion이나 Confluence, Git 기반 문서 저장소, 요즘의 정적 사이트로
- 사내 AI 지식 베이스 구축 — Claude나 ChatGPT Enterprise, Microsoft Copilot 위의 RAG 시스템에 깔끔한 조각을 넣기 위해
- 폐기되는 사이트 아카이브 — Microsoft 365 테넌트를 정리하거나 라이선스를 낮추기 전에
- 내부 문서의 외부 공개 — 사내 지식을 공개 문서 사이트로 바꾸기
- 팀을 넘나드는 이동성 — Markdown은 어떤 도구에서도, 언제까지나 읽힙니다
방법 1: Minibase Chrome 확장 프로그램 (페이지 하나씩)
Minibase는 SharePoint 페이지를 클릭 한 번으로 깔끔한 Markdown으로 바꿉니다.
Minibase가 SharePoint에서 담아내는 것:
- 페이지 제목, 생성일, 작성자, 마지막 수정 타임스탬프
- 제목 구조가 유지된 페이지 본문
- 인라인 이미지를 Markdown 참조로
- Markdown 표로 렌더링된 표
- 삽입된 문서를 Markdown URL 링크로
- 웹 파트: 텍스트 블록, 빠른 링크, 뉴스, 목록을 펼친 콘텐츠로 추출
Minibase가 걷어내는 것:
- 사이트 탐색, 왼쪽 창, 리본
- 댓글과 @ 멘션 패널 (댓글 자체는 문서 하단에 남습니다)
- 추천 페이지 안내와 관리자 전용 배지
언제 알맞은 도구인가: 페이지 1~20개를 내보낼 때, 브라우저 세션으로만 접근할 수 있는 콘텐츠를 다룰 때, 가벼운 일회성 변환일 때.
방법 2: Microsoft Graph API
사이트 전체나 문서 라이브러리 전체를 대량으로 내보내려면 Microsoft Graph API가 정석입니다.
일반적인 흐름:
Sites.Read.All과Files.Read.All권한으로 Azure AD 앱을 등록합니다- 클라이언트 자격 증명이나 디바이스 코드 방식으로 액세스 토큰을 받습니다
/sites/{site-id}/pages를 호출해 페이지 목록을 가져옵니다- 페이지마다
/sites/{site-id}/pages/{page-id}를 호출해 콘텐츠 모델을 가져옵니다 canvasLayout구조를 순회하며 Markdown으로 출력합니다
장점: 규모를 감당하고, 스크립트로 짤 수 있으며, 사람 없이 돌고, 구조화된 메타데이터를 보존합니다.
단점: Azure AD 설정이 필요하고, 규모가 커지면 제한이 걸리며, 개발자가 필요합니다.
오픈소스 도우미: PnP PowerShell의 Get-PnPPage는 후처리해서 Markdown으로 만들 수 있는 페이지 객체를 돌려줍니다. Python을 쓰는 팀에는 Office365 Python SDK가 비슷한 역할을 합니다.
방법 3: PowerShell + PnP.PowerShell
Microsoft 커뮤니티가 관리하는 이 PowerShell 모듈은 SharePoint 관리자들의 기본 선택입니다. 기본적인 내보내기 루프는 이렇습니다.
Connect-PnPOnline -Url https://tenant.sharepoint.com/sites/YourSite -Interactive
$pages = Get-PnPClientSidePage
foreach ($page in $pages) {
$html = (Get-PnPPage -Identity $page.Name).LayoutWebpartsContent
# $html을 변환기(pandoc, turndown 등)에 넘깁니다
$html | Out-File "$($page.Name).html"
}
그다음 각 HTML 파일을 Pandoc이나 Turndown으로 Markdown으로 바꿉니다.
빛을 발할 때: 관리자 권한이 있는 테넌트에서의 대량 내보내기, 이사 프로젝트.
방법 4: SharePoint Online “PDF로 내보내기” + OCR
최후의 수단입니다. 모든 페이지를 PDF로 인쇄한 뒤 그 PDF를 OCR로 Markdown으로 만드는 방법인데, 권하지 않습니다. 구조와 표 배치, 링크의 충실도를 전부 잃습니다. 시간을 낭비하지 마시라고 적어 둡니다.
OneNote는 어떨까요?
OneNote는 형제 같은 문제지만 답은 다릅니다.
- 가장 좋은 길: OneNote 웹 앱(onenote.com)을 열고 페이지마다 Minibase를 쓰세요. 페이지를 깔끔한 Markdown으로 담아냅니다
- 대안: Microsoft Graph API의
/me/onenote/pages엔드포인트가 페이지 내용을 HTML로 돌려주니, 그것을 Markdown으로 변환하세요 - 피할 것: OneNote의 기본 “PDF로 인쇄” — SharePoint와 똑같이 구조를 잃습니다
SharePoint 특유의 문제 다루기
알아 둘 만한 함정이 몇 가지 있습니다.
- 웹 파트는 임의의 콘텐츠를 품을 수 있습니다. 뉴스 회전 배너, 이벤트, 빠른 링크 같은 것들이죠. Minibase는 이것을 평범한 Markdown으로 펼치고, Graph API는 여러분이 원하는 대로 렌더링할 수 있는 구조화된 JSON을 줍니다.
- 모던 페이지와 클래식 페이지는 HTML이 크게 다릅니다. Minibase는 자동으로 구분하지만, 스크립트는 페이지 유형에 따라 분기해야 합니다.
- 권한은 사용자를 따라다닙니다. 이사를 위해 내보내는 중이라면 사이트 소유자 권한이 있는지 확인하세요. 일반 구성원에게는 감춰진 영역이 있을 수 있습니다.
- 큰 이미지가 base64로 본문에 박히는 경우가 있습니다. Minibase는 URL로 연결된 참조를 주니, 스크립트 내보내기에서 파일 크기 문제가 생기면 base64를 걷어내세요.
대부분의 팀을 위한 현실적인 선택
- 페이지 1~20개: Minibase 확장 프로그램. 무료에서도 무제한 저장이 되고, Plus(월 $5.99)는 AI 템플릿과 저장 기록, 영상 전사를 열어 줍니다.
- 페이지 20~500개: PnP PowerShell + Pandoc 변환. 스크립트를 하나 만들어 한 번 돌리세요.
- 페이지 500개 이상: 제대로 된 수집 파이프라인을 갖춘 Graph API를, 일정을 걸어서.
- 지금 당장 그 내용을 Claude나 ChatGPT에 넣고 싶다면: Minibase — 내보낸 결과가 이미 LLM 컨텍스트 창에 맞춰져 있습니다.
SharePoint의 콘텐츠는 애초에 그곳에 갇혀 있을 이유가 없었습니다. 이동 가능한 형식은 Markdown입니다. 규모에 맞는 방법을 고르세요.
Continue reading
Confluence 페이지 Markdown 내보내기
Confluence를 깔끔한 Markdown으로 내보내는 완전 가이드. 문서 마이그레이션부터 위키 기반 AI 지식 베이스 구축까지 다룹니다.
OneNote를 Markdown으로 내보내기
전자 필기장과 섹션, 페이지를 Markdown으로. Chrome 확장과 Microsoft Graph API, 변환 도구를 비교했습니다.
Quip 문서를 Markdown으로 내보내기
Salesforce가 Quip을 닫기 전에 옮기세요. 확장 프로그램부터 API까지, 현실적인 내보내기 방법을 정리했습니다.
Notion 페이지를 Markdown으로 저장하는 방법
어떤 Notion 페이지든 깔끔한 Markdown으로: toggle 펼침, database는 테이블로 보존. 2026 완전 가이드.