0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

NotionのページをHTMLエクスポートしてからPDF化する

0
Posted at

TLDL

Notion上に作成した資料をファイル化して納品する必要があったが、NotionのPDFエクスポートはビジネスプランでないとサブページを含んだエクスポートができなかったため、AIでツール化した


使用したツール

  • Antigravity CLI(Gemini 3.7 Flash[medium])
  • Ghostty
  • Zed

リポジトリ

kekosh/notion-html_to_pdf

わざわざ作った理由

  • Web上のツールやPythonで作成されたツール、Chrome拡張機能などいろいろあったが、昨今のセキュリティインシデントが気になって使いづらい
  • Google AI Proを契約してtokenが余ってた

なお、言語がrubyなのは、会社のメイン言語がrubyなのと、検索でヒットするのが大体pythonなのでなんとなく。

主な機能

  • ZIP直接対応: NotionからダウンロードしたZIPファイルを解凍せずにそのまま指定可能
  • トグルの自動展開: トグルリスト(<details>)を展開して印刷用に出力
  • 目次・しおり対応: PDFのサイドバー目次(アウトライン)や先頭の目次ページ生成(--toc)に対応
  • 内部リンク・アセット保持: サブページ間リンクをPDF内アンカーに変換し、画像やアイコンも維持
  • 改ページマーカー: 本文中に [改ページ] や [pagebreak] と書くことで任意の位置で改ページ可能
  • ヘッダー・フッター付与: ファイル名およびページ番号(- No -)を自動出力

使い方

1. Finderから実行(ドラッグ&ドロップ)

notion-html_to_pdf.command をダブルクリックし、NotionからエクスポートしたZIPファイルまたはフォルダをターミナルにドラッグ&ドロップして実行します。

2. コマンドラインから実行

# 基本的な実行
./notion-html_to_pdf.rb /path/to/NotionExport.zip

# 目次ページ付きで実行
./notion-html_to_pdf.rb /path/to/NotionExport.zip --toc

オプション等の詳細仕様はリポジトリの README.mdを参照してください。

感想

  • Notion独自のCSSがかなり調整の邪魔になった
  • サブページのPDF出力のために3千円強出すよりか、AIに課金して使い捨てのツールを作るほうが低コストなのかは、作っててちょっと疑問を感じるくらいには面倒だった。

以上

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?