Skip to main content
Interwork Corporation
IDR Solutions Product Support Portal
PDF開発用語集 モードの切替 ダーク/ライト/自動 モードの切替 ダーク/ライト/自動 モードの切替 ダーク/ライト/自動

JavaでPDFからテキストを抽出する

目次

  1. はじめに
  2. 前提条件
  3. コード例
  4. コールバックURLに結果を返す
  5. 設定オプション
  6. URLによるアップロード
  7. 認証を使用する
  8. 詳細情報

はじめに

以下のチュートリアルでは、ホストされたJPedal Cloud APIを使用してPDFからテキストを抽出する方法を説明します。独自のセルフホスト型JPedalマイクロサービス をセットアップすることもできます。

上記のサービスは通常のHTTPリクエストでアクセスできますが、このチュートリアルではREST API をシンプルなJavaラッパーで包んだオープンソースのJava IDRCloudClient を使用します。

前提条件

始める前に、最新バージョンのJDK(バージョン8以上)がインストールされていることを確認する必要があります。詳細はJavaのWebサイト で確認できます。

コード例

以下は、PDFからテキストを抽出するための基本的なコード例です。設定オプションと高度な機能については、以下を参照してください。

import java.util.Map;

public final class ExampleUsage {

    public static void main(final String[] args) {

        final IDRCloudClient client = new IDRCloudClient("https://my-self-hosted-service.com/" + IDRCloudClient.JPEDAL);

        
        final HashMap<String, String> params = new HashMap<>();
        params.put("input", IDRCloudClient.UPLOAD);
        params.put("file", "path/to/file.pdf");
        params.put("settings","{\"mode\":\"extractText\",\"type\":\"plainText\"}");
        try {
            final Map<String, String> results = client.convert(params);

            System.out.println("   ---------   ");
            System.out.println(results.get("previewUrl"));

            IDRCloudClient.downloadResults(results, "path/to/outputDir", "example");
        } catch (final ClientException | InterruptedException e) {
            e.printStackTrace();
        }
    }
} 

コールバックURLに結果を返す

JPedalマイクロサービスは、抽出完了時にそのステータス を送信するコールバックURLを受け付けます。コールバックURLを使用すると、抽出が完了したかどうかを判断するためにサービスをポーリングする必要がなくなります。
コールバックURLは以下のようにparamsマップに指定できます。

final HashMap<String, String> params = new HashMap<>();
params.put("input", IDRCloudClient.UPLOAD);
params.put("file", "path/to/file.pdf");
params.put("callbackUrl", "http://listener.url");
params.put("settings","{\"mode\":\"extractText\",\"type\":\"plainText\"}"); 

設定オプション

JPedal APIは、抽出をカスタマイズするためのキーと値のペアの設定オプションを含む、文字列化されたJSONオブジェクトを受け付けます。設定はパラメータ配列に追加する必要があります。PDFからテキストを抽出するための設定オプションの完全なリストはこちら で確認できます。

params.put("settings", "{\"key\":\"value\",\"key\":\"value\"}");

URLによるアップロード

ローカルファイルをアップロードする以外に、JPedalマイクロサービスがダウンロードして抽出を実行するURLを指定することもできます。これを行うには、パラメータ変数のinputとfileの値を以下のように置き換えます。

params.put("input", IDRCloudClient.DOWNLOAD);
params.put("url", "http://exampleURL/exampleFile.pdf");

認証を使用する

JPedalマイクロサービスが認証を必要とする場合、ユーザー名とパスワードを提供する必要があります。これらは、以下に示すようにusernameとpasswordという名前の2つの変数をconvertメソッドに渡すことで提供されます。

params.put("username","yourUsername");
params.put("password","yourPassword");

詳細情報

GitHub上のIDRCloudClient JPedalマイクロサービスAPI
JPedalマイクロサービスの使用