メインコンテンツへスキップ

n8nでPDFフォームデータを抽出するにはどうすればよいですか?Dropboxからダウンロードし、PDF4meを使用して、要約ファイルを保存します。

· 1分で読める
SEO and Content Writer

このウォークスルーでは、 4ノードn8nワークフロー: 手動で実行します。 ダウンロード 記入可能なPDF Dropbox、 抽出する フィールド値 PDF4me、PDFからフォームデータを抽出、 それから アップロード 小さな テキストファイル 式(例えば、名前、メールアドレス、価格)から構築されたDropboxに戻ります。サンプルパスはスクリーンショットと一致します:PDF /blog data/extract form data from pdf/sample_form.pdfテキスト出力 /blog data/extract form data from pdf/output/Form data.txtアカウントに合わせてパスを調整してください。

要約版

1. 「ワークフローを実行」をクリックしたとき (手動テスト)→ 2. Dropbox、ファイルをダウンロード → バイナリフィールド データ → 3. PDF4me、PDFからフォームデータを抽出 (データ で、 ドキュメント.pdf (ドキュメント名として)→ 4. Dropbox、ファイルをアップロード (式から取得したテキストコンテンツであり、バイナリファイルのアップロードではありません。)

バイナリフィールド名をエンドツーエンドで保持する

Dropbox はダウンロードしたバイトをフィールドに保存します (このガイドでは、 データPDF4meノードは、 同じ 下のフィールド 入力バイナリフィールド名前を変更する場合は、更新してください。 両方 ノードなので、それらは依然として一致します。

このワークフローを構築します:あなたのToDoリスト​

順番に進めてください。各ブロックの後に一時停止し、 実行ステップ (または テストワークフロー) 先に進む前に。

チェックリスト
  1. 資格: n8nでは、 Dropbox OAuth2 API そして PDF4me 認証情報。Dropboxを一覧表示または閲覧できること、およびPDF4meがテスト呼び出しを受け付けることを確認してください。
  2. ソースファイル: アップロード sample_form.pdf (またはフォーム)を、ダウンロードノードで使用するDropboxパスに指定します。
  3. キャンバス: 4つのノードを順番に追加し、左から右に接続します。 1点 流れ込む。
  4. ノードをダウンロードする: セット ファイルパス バイナリ出力をマッピングして データ (または、あなたが選んだ名前をPDF4meでミラーリングしてください。)
  5. ノードを抽出します: 選ぶ バイナリデータ、 セット 入力バイナリフィールド に データ、そして設定する 文書名 (例えば ドキュメント.pdf)
  6. ノードをアップロードします: 振り向く バイナリアップロード オフ、ポイント ファイルパス あなたの出力へ 。TXT パスに、次の式を貼り付けます。 $json.formData.* 分野。
  7. エンドツーエンドテスト: ワークフローを実行し、抽出ノードでJSONを確認し、Dropboxに新しいファイルを作成します。

PDFファイルの見た目(入力例)​

サンプル 請求書サンプル いくつかのラベル付きフィールドを使用します。値の例: アルバート氏、 [email protected]、 アイテム 20、 量 100、そして価格 5000 抽出ツールがキーに変換するもの フォームデータ。

顧客名、メールアドレス、商品、数量、価格の各項目が記入された請求書フォームのサンプル(PDF形式)

ソースPDF:入力可能なフィールドあり(フラットスキャンではありません)。


概要:4つのノード​

1Manual trigger
2Download (Dropbox)
3Extract (PDF4me)
4Upload (Dropbox)

ワークフローキャンバス​

n8nワークフロー:ワークフロートリガーの実行、Dropboxファイルのダウンロード、PDFからのフォームデータの抽出、Dropboxファイルのアップロード

4つのステップ、各ステップで1つのアイテム、テスト実行後に緑色の成功状態。


ステップ1:ファイルをダウンロードする(Dropbox)​

  1. 追加 Dropbox → ダウンロード (リソース: ファイル)
  2. ファイルパス: 例: /blog data/extract form data from pdf/sample_form.pdf。
  3. 出力ファイルをフィールドに配置: データ (バイナリを次のノードが期待する場所に保持します。)
  4. 実行ステップ そして開く バイナリ タブ: 表示されるはずです sample_form.pdf、 アプリケーション/PDF、およびサイズメタデータ。
Dropbox ファイルノードのダウンロード ファイルパス sample_form.pdf バイナリ出力フィールドデータ

ステップ1:下流マッピング用のパスとバイナリフィールド名。


ステップ2:PDFからフォームデータを抽出する(PDF4meを使用)​

上流: ノードをダウンロード → 抽出する ノード。

  1. 追加 PDF4me そして選択する PDFからフォームデータを抽出する (抽出操作の場合)
  2. 入力データタイプ: バイナリデータ。
  3. 入力バイナリフィールド: データ (ステップ1と一致する必要があります。)
  4. 文書名: 例えば ドキュメント.pdf (処理ラベル; .pdf 拡大)。
  5. 実行ステップ。 で 出力、 確認する フォームデータ フィールドキーと値を指定します。
PDF4me PDFからフォームデータを抽出するパラメータバイナリデータフィールドデータドキュメント名 document.pdf

ステップ2:バイナリ入力、構造化されたJSON出力。

展開:JSONフィールドの例

成功したランニングには通常以下が含まれます フォームデータ さらにステータスフィールドなど 成功、 メッセージ、 ソースファイル名、 そして 手術正確なキーはコネクタのバージョンによって異なります。

{
      "formData": {
      "customer_name": "Mr. Albert",
      "email": "[email protected]",
      "item": "20",
      "quantity": "100",
      "price": "5000"
      },
      "success": true,
      "message": "Form data extracted successfully",
      "sourceFileName": "sample_form.pdf",
      "operation": "extractFormDataFromPdf"
      }

ステップ3:ファイルをアップロードする(Dropbox、式から生成されたテキストなど)​

上流: ノードを抽出する→ アップロード ノード。

  1. 追加 Dropbox → アップロード (リソース: ファイル)
  2. ファイルパス: 目的地の例: /blog data/extract form data from pdf/output/Form data.txt. 作成する 出力 Dropboxにフォルダが存在しない場合は、フォルダを作成します。
  3. バイナリデータ: オフ このパターンでは( 文章PDFバイトを再アップロードしない)。
  4. ファイルの内容: 使用する 表現 必要なフィールドを連結します。例(式エディタに貼り付けてください):
{{ $json.formData.customer_name }} {{ $json.formData.email }} {{ $json.formData.price }}
  1. チェック プレビュー 式エディタの下(例: アルバート氏 [email protected] 5000)
  2. 実行ステップ そして、Dropboxの応答に新しいファイル名とサイズが表示されていることを確認してください。
Dropbox ファイルのアップロード テキスト パス フォーム data.txt 式 formData フィールド プレビュー

ステップ3:前のノードのJSONに加えて、人間が読める形式でのエクスポート(オプション)。


結果:テキストファイルを開く​

ランニング後、 フォームデータ.txt Dropbox(またはビューア)で確認してください。プレビューで確認した値、つまり名前、メールアドレス、価格が1行に表示されるはずです。

テキストファイルプレビュー出力フォームデータTXT(アルバート氏のメールアドレスと価格を含む)

アップロード手順で想定どおりのデータが書き込まれたかどうか、簡単に確認してください。


クイックリファレンス​

#ノード覚えておくべきこと
1When clicking “Execute workflow”Use for design-time testing; swap for a schedule or webhook later
2Download a fileCorrect Dropbox path; binary field = data
3Extract form data from PDFBinary Data + Input Binary Field = data; Document Name with .pdf
4Upload a fileText mode; expression reads $json.formData.*

ノード参照: PDFからフォームデータを抽出 - n8nAPI: PDFからフォームデータを抽出(API)。 はじめる: n8n統合ガイド。


トラブルシューティング​

フォームデータが空または欠落しています

PDFに実際の情報が含まれていることを確認してください。 アクロフォーム フィールド。フラット化されたPDFや画像のみのPDFでは、同じ構造は返されません。

バイナリフィールドの不一致

ダウンロードが書き込む場合 データ抽出には使用する必要があります データ として 入力バイナリフィールド両方の名前を一緒に変更します。

式は[未定義]を示します

Extract node の出力 JSON を開き、正確にコピーします。 フォームデータ キー名(PDFのフィールド名と一致している必要があります)。


次に試すべきことは?​

これで再現可能なパスができました。 ダウンロード フォーム PDF、 抽出する 構造化されたフィールド、そして 公開 Dropbox内のテキスト要約、データベース内の行、あるいは後続ノードのWebhookペイロードなど、必要なデータの一部を取得できます。