pdf-reader

PDF ファイルをテキスト抽出して Markdown 形式に変換するスキルです。

Safety Notice

This listing is imported from skills.sh public index metadata. Review upstream SKILL.md and repository scripts before running.

Copy this and send it to your AI assistant to learn

Install skill "pdf-reader" with this command: npx skills add childbamboo/claude-code-marketplace-sample/childbamboo-claude-code-marketplace-sample-pdf-reader

PDF Reader

PDF ファイルをテキスト抽出して Markdown 形式に変換するスキルです。

クイックスタート

基本的な使い方

WSL環境でPythonスクリプトを実行

wsl python3 scripts/read_pdf.py "/mnt/c/path/to/file.pdf"

Markdown形式で保存

  • スクリプトでテキスト抽出

  • Write ツールで .md ファイルに保存

前提条件

pdfplumber パッケージが必要です:

wsl pip3 install pdfplumber

使用例

例1: PDF ファイルを読み込んで内容を表示

User: "C:\Users\keita\repos\guideline.pdf を読み込んで" Assistant:

  1. Windowsパスを WSL パスに変換: /mnt/c/Users/keita/repos/guideline.pdf
  2. wsl python3 scripts/read_pdf.py を実行
  3. 抽出されたテキストを Markdown 形式で表示

例2: PDF を Markdown に変換して保存

User: "ガイドライン.pdf を Markdown に変換して保存" Assistant:

  1. scripts/read_pdf.py でテキスト抽出
  2. Markdown形式で構造化(ページごとに見出し、テーブルも含む)
  3. Write ツールで ガイドライン.md に保存
  4. 保存完了を報告

ワークフロー

単一ファイルの読み込み

  • ユーザーが PDF ファイルパスを指定

  • Windows パスを WSL パス形式に変換 (C:
    → /mnt/c/ )

  • wsl python3 scripts/read_pdf.py を実行

  • 抽出されたテキストを Markdown 形式で表示または保存

複数ファイルの一括処理

  • Glob で .pdf ファイルを検索

  • 各ファイルに対してスクリプトを実行

  • 結果をまとめて報告

出力形式

Markdown 構造

[PDFファイル名]

Total Pages: 10


Page 1

[ページ1のテキスト内容]

Tables

Table 1:

列1列2列3
データ1データ2データ3

Page 2

[ページ2のテキスト内容]


スクリプト詳細

Python スクリプトは scripts/read_pdf.py に配置されています。

主な機能:

  • ページごとのテキスト抽出

  • テーブルの Markdown 化

  • 複数ページの構造化

  • エラーハンドリング

使い方:

python scripts/read_pdf.py <file_path>

対応機能

  • ✅ テキスト抽出(全ページ)

  • ✅ テーブルの Markdown 化

  • ✅ ページ番号の保持

  • ✅ 構造化された出力

  • ⚠️ 画像からのテキスト抽出(OCR未対応)

  • ⚠️ 複雑なレイアウトは簡略化

制限事項

  • スキャンされた PDF(画像のみ)からはテキスト抽出不可

  • OCR 機能は含まれません

  • 複雑なレイアウトは簡略化されます

  • フォント情報、色などのスタイルは失われます

  • 埋め込みオブジェクトは抽出されません

トラブルシューティング

pdfplumber がインストールされていない

wsl pip3 install pdfplumber

テキストが抽出されない

  • PDF がスキャン画像の可能性があります(OCR が必要)

  • PDF が暗号化されている可能性があります

  • テキストレイヤーがない PDF かもしれません

文字化けする

日本語対応の確認

wsl locale

UTF-8 が含まれていることを確認

メモリ不足エラー

大きな PDF ファイルの場合、ページごとに分割して処理することを検討してください。

パス変換

Windows パスから WSL パスへの変換:

  • C:\Users... → /mnt/c/Users/...

  • D:\Projects... → /mnt/d/Projects/...

  • バックスラッシュ
    をスラッシュ / に変換

関連ツール

  • PyPDF2: 軽量な代替ライブラリ

  • pdfminer.six: より詳細な制御が必要な場合

  • Camelot: テーブル抽出特化

  • OCRmyPDF: スキャン PDF に OCR を適用

高度な使い方

特定のページのみ抽出

スクリプトを修正して pdf.pages[0:5] のようにスライスを使用できます。

テーブルのみ抽出

スクリプト内の extract_tables() 部分のみを使用します。

OCR が必要な場合

pytesseract と pdf2image を組み合わせて使用します(別スキルとして作成推奨)。

バージョン履歴

  • v1.0.0 (2026-01-06): 初期リリース

  • 基本的なテキスト抽出機能

  • テーブル Markdown 化対応

  • WSL環境での動作

  • ページごとの構造化

Source Transparency

This detail page is rendered from real SKILL.md content. Trust labels are metadata-based hints, not a safety guarantee.

Related Skills

Related by shared tags or category signals.

Coding

pdf-vision-reader

No summary provided by upstream source.

Repository SourceNeeds Review
Coding

docx-reader

No summary provided by upstream source.

Repository SourceNeeds Review
Coding

xlsx-reader

No summary provided by upstream source.

Repository SourceNeeds Review