PDF ファイルからテキストを抽出することは、ドキュメント処理パイプラインを構築する際に頻繁に求められる要件であり、特に検索インデックス作成やデータ分析において重要です。GroupDocs.Parser Cloud SDK for Node.JS は、低レベルのパースロジックを扱うことなく、Node.JS で PDF からプログラム的にテキストを抽出できる堅牢なライブラリを提供します。このガイドでは、完全なコード例、cURL REST の代替手段、必要なセットアップ手順を使用して、Node.JS で PDF からテキストを抽出する方法を学びます。平文の PDF と暗号化された PDF の両方をカバーします。
Node.JS で PDF からテキストを抽出する - 完全なコード例
以下の例は、Node.JS で GroupDocs.Parser Cloud SDK を使用して PDF からテキストを抽出する方法を示しています。初期化、リクエストの構築、実行、および結果をローカルファイルに保存する手順が含まれています。
const GroupDocsParserCloud = require("@groupdocs/parser-cloud");
const fs = require("fs");
(async () => {
// Initialize configuration with your credentials
const config = new GroupDocsParserCloud.Configuration({
clientId: "YOUR_CLIENT_ID",
clientSecret: "YOUR_CLIENT_SECRET"
});
// Create Parser API instance
const parserApi = new GroupDocsParserCloud.ParserApi(config);
// Build request to extract text from a PDF file stored in cloud storage
const request = new GroupDocsParserCloud.ExtractTextRequest({
fileInfo: new GroupDocsParserCloud.FileInfo({
filePath: "input.pdf" // path to the PDF in GroupDocs cloud storage
})
});
try {
// Execute the request
const result = await parserApi.extractText(request);
// result.text contains the extracted plain text
console.log("Extracted Text:\n", result.text);
// Save extracted text to a local file
fs.writeFileSync("extracted.txt", result.text, "utf8");
console.log("Text saved to extracted.txt");
} catch (error) {
console.error("Error extracting text:", error);
}
})();
注意: このコード例はコア機能を示しています。プロジェクトで使用する前に、ファイルパスや構成値を実際の環境に合わせて更新し、必要な依存関係がすべて正しくインストールされていることを確認し、開発環境で徹底的にテストしてください。問題が発生した場合は、公式ドキュメント を参照するか、サポートチーム にお問い合わせください。
cURL と REST API を使用して PDF テキストを取得する
言語に依存しないアプローチを好む場合は、GroupDocs.Parser Cloud REST API を呼び出す cURL コマンドを使用して同じ結果を得ることができます。以下の手順では、認証、PDF のアップロード、テキストの抽出、結果のダウンロード方法を示します。
# 1. Get an access token
curl -X POST "https://api.groupdocs.cloud/v2.0/auth/token" \
-H "Content-Type: application/json" \
-d '{"client_id":"YOUR_CLIENT_ID","client_secret":"YOUR_CLIENT_SECRET"}'
# Response contains "access_token"
# 2. Upload the PDF to cloud storage
curl -X PUT "https://api.groupdocs.cloud/v2.0/storage/file/input.pdf" \
-H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
-H "Content-Type: application/pdf" \
--data-binary @input.pdf
# 3. Extract text from the uploaded PDF
curl -X POST "https://api.groupdocs.cloud/v2.0/parser/extractText" \
-H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
-H "Content-Type: application/json" \
-d '{"fileInfo":{"filePath":"input.pdf"}}' \
-o result.json
# 4. Save the extracted text locally
jq -r '.text' result.json > extracted.txt
これらのコマンドは、Node.JS で PDF からテキストを抽出する操作と同じですが、クラウド API を介して実行されるため、任意のプラットフォームと簡単に統合できます。詳細については、公式 API リファレンスをご覧ください。
Node.JS における PDF テキスト抽出の詳細
コードの各部分を理解することで、スキャンされた PDF や暗号化された PDF の処理など、より複雑なシナリオに適応できるようになります。
- Configuration Initialization -
const config = new GroupDocsParserCloud.Configuration({
clientId: "YOUR_CLIENT_ID",
clientSecret: "YOUR_CLIENT_SECRET"
});
このコードは、認証情報を保持する構成オブジェクトを作成します。クラスの詳細はAPI リファレンスに記載されています。
- Parser API インスタンス -
const parserApi = new GroupDocsParserCloud.ParserApi(config);
ParserApi クラスは、extractText を含むすべての解析操作のメソッドを提供します。
- ExtractTextRequest の構築 -
const request = new GroupDocsParserCloud.ExtractTextRequest({
fileInfo: new GroupDocsParserCloud.FileInfo({
filePath: "input.pdf"
})
});
ExtractTextRequest は、サービスに処理するファイルを指示します。スキャンされた PDF の場合、ここで OCR オプションを設定することもできます。
- リクエストの実行 -
const result = await parserApi.extractText(request);
extractText メソッドはリクエストをクラウドに送信し、プレーンテキストを含むレスポンスオブジェクトを返します。
- 結果の処理 -
console.log("Extracted Text:\n", result.text); fs.writeFileSync("extracted.txt", result.text, "utf8");result.textプロパティは抽出されたコンテンツを保持しており、ログに出力したり、保存したり、さらに処理したりできます。
インストールと構成 GroupDocs.Parser Cloud SDK for Node.JS
コードを実行する前に、SDK をインストールし、環境を設定してください。
npm install groupdocs-parser-cloud
前提条件: Node.js 14 以降、アクティブな GroupDocs Cloud アカウント、そしてクライアント認証情報(クライアント ID とクライアントシークレット)。最新パッケージは公式ダウンロードページからダウンロードしてください。インストール後、クレデンシャルを安全に保存するために config.json を作成する(または環境変数を使用する)。
結論
Node.JS で PDF からテキストを抽出することは、GroupDocs.Parser Cloud SDK for Node.JS を使用すれば簡単になります。SDK は PDF パーシングの複雑さを抽象化し、スキャンされた PDF の OCR をサポートし、暗号化されたドキュメントもすぐに処理できます。本番環境で使用するには有効なライセンスを取得することを忘れないでください。サブスクリプションを購入するか、ライブラリを評価するために一時ライセンス をリクエストできます。コード例、cURL の代替手段、インストール手順がカバーされているので、PDF テキスト抽出をドキュメント ワークフローに統合し、強力な検索と分析機能を活用する準備が整いました。
FAQs
Node.JSでGroupDocs.Parserを使用してPDFからテキストを抽出するにはどうすればよいですか?
完全なコード例に示されているように、ParserApiのextractTextメソッドを使用します。SDK は自動的にプレーンテキストを返し、スキャンされた PDF の場合は OCR を有効にすることができます。スキャンされたPDFからテキストを抽出できますか?
はい。ExtractTextRequestの OCR オプションを設定して、サービスが画像ベースのページ上のテキストを認識できるようにします。PDF がパスワードで保護されている場合はどうすればよいですか?
FileInfoオブジェクトにパスワードを含めます (password: "yourPassword")。SDK はテキスト抽出前にファイルを復号化します。サービスを Node.JS コードを書かずに呼び出す方法はありますか?
もちろんです。“Retrieve PDF Text Using cURL and the REST API” セクションの cURL コマンドは、REST API を介した言語に依存しないアプローチを示しています。
