PDF と画像からテキストとメタデータを抽出する無料 PHP API
オープンソースの PHP 光学文字認識(OCR)ライブラリは、PHP アプリ内で PDF、DOCX、画像(JPEG、PNG)やその他のドキュメントから、複数言語でテキスト、メタデータ、HTML を抽出できます。
ソフトウェア開発の分野では、さまざまな種類のファイルからテキストを扱うことは難しいこともありますが、頻繁に行われる作業です。ドキュメント管理システムやコンテンツ分析ツール、検索エンジンを作成する場合でも、PDF、Word 文書、スプレッドシート、その他のファイル形式からテキストを抽出できることは重要です。ここで PHP-Apache-Tika ライブラリの価値が発揮されます。Apache Tika は、コンテンツ分析ジョブを管理するために作られた柔軟なツールキットです。Tika を使用すると、PDF、Microsoft Office ファイル、画像などさまざまなファイルタイプからメタデータとテキストを取得できます。Tika はもともと Java で実装されており、通常は独立したサーバーとして設定され、HTTP 経由でアクセスできます。この方式により、PHP などの異なるプログラミング言語が、ゼロから複雑なパーシング処理を作成することなく、Tika の強力な機能を利用できます。
このライブラリは、テキストおよび HTML の抽出、メタデータ抽出、エラーハンドリングの改善、OCR 認識、文書の標準化メタデータ、ローカルおよびリモートリソースのサポートなど、多数の機能をサポートしています。PHP-Apache-Tika ライブラリは、PHP アプリケーションと Apache Tika サーバーを橋渡しします。独自のパーサーやコンバータを構築する代わりに、このライブラリを使用してドキュメントを Tika サーバーに送信し、クリーンな抽出テキストやメタデータを受け取ることができます。これにより開発プロセスが簡素化されるだけでなく、Tika の継続的な改善と広範なフォーマットサポートの恩恵を受けられます。複雑なドキュメント管理システムでも、軽量なコンテンツ分析ツールでも、PHP-Apache-Tika ライブラリは信頼性が高く柔軟なソリューションを提供します。
PHP-Apache-Tika の開始方法
PHP-Apache-Tika をインストールする推奨方法は Composer を使用することです。スムーズなインストールのために以下のコマンドをご利用ください。
Install PHP-Apache-Tika via Composer
composer require vaites/php-apache-tikaInstall PHP-Apache-Tika via Github
git clone https://github.com/fizzday/OcrPHP.git You can download the compiled shared library from Github repository.
PHP を使用したテキストと HTML の抽出
PHP-Apache-Tika ライブラリの主要な機能のひとつは、さまざまなドキュメント形式からテキストを抽出できることです。これは検索機能やコンテンツ分析ツールを実装する際に特に有用です。ライブラリはドキュメントからプレーンテキストの抽出をサポートしており、インデックス作成、検索、コンテンツ分析が容易になります。以下のコードスニペットは、TikaClient がドキュメントを Tika サーバーに送信し、プレーンテキストコンテンツを取得して、さらに処理やインデックス作成に利用できるようにする例です。
How to Extract Text from a Document inside PHP Apps?
require_once 'vendor/autoload.php';
use Vaites\ApacheTika\TikaClient;
// Initialize the Tika client with the Tika server URL
$client = new TikaClient('http://localhost:9998');
// Define the path to the document (e.g., PDF, DOCX, etc.)
$filePath = '/path/to/your/document.pdf';
try {
// Extract text content from the document
$extractedText = $client->extract($filePath);
echo "Extracted Text:\n" . $extractedText;
} catch (\Exception $e) {
echo "Error extracting text: " . $e->getMessage();
}
PHP ライブラリによるメタデータ抽出
テキストだけでなく、ドキュメントには作者情報や作成日、ファイルタイプなどの貴重なメタデータが含まれることが多いです。PHP-Apache-Tika ライブラリはこのメタデータを抽出でき、よりリッチなアプリケーション構築が可能になります。この例は、ドキュメントからメタデータを取得する方法を示しています。結果の配列には、ファイルタイプや内容に応じたさまざまな詳細が含まれます。
How to Extract Metadata using PHP Library?
require_once 'vendor/autoload.php';
use Vaites\ApacheTika\TikaClient;
// Initialize the Tika client
$client = new TikaClient('http://localhost:9998');
// Specify the document file path
$filePath = '/path/to/your/document.pdf';
try {
// Extract metadata from the document
$metadata = $client->getMetadata($filePath);
echo "Extracted Metadata:\n";
print_r($metadata);
} catch (\Exception $e) {
echo "Error extracting metadata: " . $e->getMessage();
}
複数のファイル形式の取り扱い
Apache Tika の強みは、複数のファイル形式をサポートしている点にあります。PDF、DOC、画像、さらにはマイナーなファイルタイプでも、このライブラリを使用すれば、形式固有の問題を気にせずに必要なデータを抽出できます。たとえば、ユーザーがさまざまなファイルタイプをアップロードできるドキュメント管理システムを開発しているとします。ライブラリを使って各ファイルのコンテンツとメタデータの両方を取得できます。