shipfastlabs/parsel

A fast, helpful, and open-source document parser for PHP

解決する課題

Parsel は、Markdown、プレーンテキスト、構造化データなどの形式にドキュメントをパースするための統合 PHP API を提供します。異なるドキュメントパーサー用に別々の統合を書く必要がなく、複数の交換可能なドライバー間で動作する単一で表現力豊かなインターフェースを提供します。

動作方法

Parsel はさまざまなドキュメントパーサーエンジン(ドライバー)をラップする役割を果たします。ローカルドライバーである LiteParse と AnyDoc をサポートしており、専用のインストーラーでインストール可能です。ユーザーはドライバーを切り替えたり、プロセス全体のデフォルトを設定して、PDF、DOCX、EPUB、CSV などの異なるファイルタイプや出力形式に対応できます。また、Driver コントラクトを介してカスタムドライバーの実装も可能で、リモート API や他のツールとの統合が可能です。

対象ユーザー

特定のパーサーまたはプロバイダーに縛られず、アプリケーションにドキュメントパーサーおよび OCR 機能を統合したい PHP 開発者。

主な特徴

  • 交換可能なドライバー: LiteParse と AnyDoc を標準でサポートし、カスタムドライバー用の拡張可能なアーキテクチャを備えています。
  • 柔軟な出力: ドキュメントを Markdown、プレーンテキスト、JSON、または座標付きの構造化ページに変換できます。
  • 高度なパースオプション: OCR、DPI 設定、ページ範囲選択、ドキュメントからのスクリーンショット生成をサポートしています。
  • 詳細な制御: LiteParseOptions のような型付きオプションを提供し、画像の埋め込みやヘッダー/フッターの保持といった細かい挙動を管理できます。
  • 遅延読み込み: lazyPages() を使用して大規模なドキュメントをストリーミング処理し、メモリオーバーヘッドを回避できます。
  • テストユーティリティ: テスト用にパース結果をモックする Parsel::fake() メソッドを提供しています。

関連

  • プロジェクト
  • プロジェクト
  • プロジェクト
  • プロジェクト
  • プロジェクト