Aller au contenu principal

Préparer les informations d'analyse pour le document

Ce guide couvre

Préparer les informations d'analyse c'est la configuration du tableau de bord qui transforme un flux brut PDF dans automatisé PDF extraction de donnéesVous définissez des clés de capture, dessinez des zones sur un document d'exemple et attribuez à chaque clé une règle d'extraction en utilisant soit Expression régulière pour des modèles stables ou JavaScript Expression pour la logique conditionnelle. Une fois enregistré, le même modèle s'exécute à partir du REST API, Make, Zapier, Power Automate, et n8n en se référant à son ID du modèle.

Articles de blog connexes
Il n'y a pas encore d'article de blog consacré à cette fonctionnalité — à venir prochainement.
En attendant, n'hésitez pas à consulter le blog de PDF4me pour découvrir des tutoriels et des procédures de travail adaptés à toutes les plateformes.
Consultez le blog

Authentification de votre configuration

La création du modèle d'analyse syntaxique a lieu dans le PDF4me Tableau de bord développeur. Connectez-vous avec votre compte, puis créez ou copiez un API clé pour le document d'analyse API appels qui utilisent le modèle que vous créez ici.

Informations importantes à ne pas manquer

Regex d'abord, JavaScript uniquement lorsque nécessaire
Utiliser Expression régulière pour tout champ ayant une forme stable (numéro de facture, date, total, numéro de TVA). Utilisez JavaScript Expression Utilisez-les uniquement lorsque vous avez besoin de logique conditionnelle, de règles de branchement multiples ou de classification de documents. Il est tout à fait possible, et même recommandé, de les combiner dans un même modèle.
Un modèle par famille de mise en page stable
Un seul modèle permet de gérer les petites variations, comme les changements de police ou les décalages de position. Pour des mises en page réellement différentes (deux fournisseurs avec des modèles de factures différents), créez des modèles distincts et acheminez les fichiers vers le modèle approprié à l'aide d'un classificateur ou du système source avant d'appeler la fonction « Analyser le document ».
Sauvez le TemplateId, pas le nom
Après avoir enregistré les modifications, le tableau de bord génère un GUID ID du modèle pour le modèle. Toujours passer ID du modèle en production API appels. Nom du modèle Cela fonctionne aussi, mais renommer le modèle interrompt toute automatisation qui y fait référence par son nom.

Étape 1 : Créer le modèle d’analyse

  1. Ouvrez le Tableau de bord Analyser les documents.
  2. Cliquez Ajouter et saisissez un nom de modèle clair (par exemple, invoice ou vendor-statement).
  3. Cliquez Sauvegarder pour créer le modèle vide.
  4. Ouvrez le modèle dans Modifier mode pour commencer la configuration des touches de capture.
Liste des modèles d'analyse de documents PDF4me dans le tableau de bord développeur, avec le bouton Ajouter pour créer un nouveau modèle d'analyse pour l'extraction automatisée de données PDF.

Étape 2 : Téléchargez un échantillon et configurez les clés de capture

Le tableau de bord affiche un élément téléchargé PDF à droite et montre le Analyse des informations Le formulaire se trouve à gauche. Utilisez des échantillons réels, conformes à la production, et non des fichiers de test synthétiques, afin que les zones de capture correspondent à ce que vous verrez dans le trafic réel.

  1. Cliquez Télécharger le fichier modèle et choisissez un échantillon représentatif (facture, contrat, formulaire).
  2. Sous Clés, cliquez + Pour ajouter une clé de capture, donnez-lui un nom en camelCase : invoiceNumber, customerName, totalAmount.
  3. Choisir Choisissez le type d'expression pour la clé : Javascript Expression ou Regex Expression.
  4. Collez le corps de l'expression dans le champ qui apparaît.
  5. Ensemble Pages à all pour scanner chaque page, ou jusqu'à un numéro de page spécifique (1, 2, etc.) pour limiter la portée.
  6. Basculer Rechercher sur toute la page Activé lorsque la valeur n'est pas à une position fixe. Désactivé, seule la zone de capture dessinée est analysée.
Interface de configuration de l'analyse de documents PDF4me. Le panneau de gauche affiche les informations d'analyse : nom du modèle « facture », identifiant d'analyse et une clé « KeyName » avec les options « Type d'expression » (Expression JavaScript), « Corps de l'expression JavaScript », « Pages » et « Rechercher sur toute la page ». Le panneau de droite affiche le PDF de la facture importée, avec les boutons d'action « Importer le fichier modèle », « Tester l'analyse » et « Enregistrer les modifications » en haut, de gauche à droite.

Écran de configuration de l'analyse de document. À gauche : formulaire d'informations d'analyse avec clés et type d'expression. À droite : exemple téléchargé. PDFLes boutons d'action sont disposés de gauche à droite : Télécharger le fichier modèle, Tester l'analyse, Enregistrer les modifications.

Étape 3 : Choisissez le type d’expression pour chaque clé

Type d'expressionIdéal pourUtilisation typiqueComplexité
Regex ExpressionFixed text patternsInvoice number, dates, totals, tax IDs, postal codesLow
JavaScript ExpressionConditional and multi-rule extractionDocument classification, fallback logic, rule orchestrationMedium to High

Modèles d'expressions régulières (bases de l'analyseur PDF avec expressions régulières)

Utiliser Expression régulière lorsque le terrain présente une forme stable et prévisible. La zone capturée est analysée pour la première correspondance.

INV-\d{6,10}
\d{2}/\d{2}/\d{4}
\$?\d{1,3}(?:,\d{3})*(?:\.\d{2})?

Correspondances clés courantes pour une facture :

  • invoiceNumberINV-\d{6,10}
  • invoiceDate\d{2}/\d{2}/\d{4}
  • totalAmount\$?\d{1,3}(?:,\d{3})*(?:\.\d{2})?

Ces mêmes modèles fonctionnent également pour les mêmes champs dans les relevés de fournisseurs, les bons de commande et les documents d'expédition, car les numéros de facture, les dates et les montants partagent la même forme dans la plupart des documents commerciaux.

JavaScript Expression pour la logique conditionnelle

Utiliser JavaScript Expression lorsque le résultat dépend de la présence ou de la combinaison de plusieurs marqueurs dans le document. PDF4me transmet le texte extrait à votre fonction en tant que variable textVotre fonction évalue le texte et renvoie une chaîne de caractères qui devient la valeur de la clé.

Exemple 1 : classification par marqueurs de contenu

Permet de distinguer un document de conditions générales d'un document de commande en vérifiant quelles expressions clés apparaissent :

function functionFormatTextDate1(text) {
console.log("Hello");
var term = [...text.matchAll(/General Terms and Conditions/gi)];
var order = [...text.matchAll(/your ordernumber/gi)];

if (term.length) {
if (order.length) {
return "Order document";
} else {
return "Terms and Conditions";
}
} else {
return "Not Terms and Conditions";
}
}

return functionFormatTextDate1(text);

Exemple 2 : détection des factures et des commandes

Un classificateur court qui détermine si le document est une facture ou une commande en fonction de la présence des mots invoice et ordernumber:

function functionGetInvoiceOrder(text) {
// You get all PDF text in `text`
var invoice = [...text.matchAll(/invoice/gi)];
var order = [...text.matchAll(/ordernumber/gi)];

if (invoice.length) {
if (order.length) {
return "Order document";
} else {
return "invoice";
}
} else {
return "";
}
}

return functionGetInvoiceOrder(text);

Conseil de mise en œuvre : Enveloppez votre logique dans une fonction nommée et appelez-la avec retourner functionName(text); En bas. Le tableau de bord exécute le corps de l'expression comme une fonction dont la valeur finale renvoyée alimente la clé.

Étape 4 : Tester l’analyse et enregistrer les modifications

Les boutons d'action situés en haut de l'éditeur s'affichent de gauche à droite dans l'ordre où vous les utilisez :

  1. Télécharger le fichier modèle charge l'échantillon PDF utilisé pour délimiter les zones de capture.
  2. Analyse de test Analyse toutes les clés par rapport à l'échantillon téléchargé et affiche les valeurs extraites directement dans le texte. Utilisez cette fonction pour valider chaque expression régulière ou JavaScript expression avant l'enregistrement.
  3. Enregistrer les modifications conserve le modèle et lui attribue une valeur stable TemplateId (GUID). Copiez ce GUID pour l'utiliser dans API plateformes d'appels et d'automatisation.

Itérer sur chaque clé jusqu'à Analyse de test Renvoie la valeur attendue pour chaque champ. Affinez la zone de capture si du texte adjacent est visible, ou réduisez l'expression si les correspondances de modèle sont trop larges.

Utilisez le modèle dans API ou appels d'automatisation

Une fois Enregistrer les modifications attribue un TemplateIdLe même modèle d'analyse syntaxique s'exécute partout par référence. Il n'est pas nécessaire de recréer la configuration sur chaque plateforme.

ChampSourceBut
TemplateIdL'identifiant unique global (GUID) s'affiche dans le panneau de détails du modèle après l'enregistrement.Identifiant stable pour l'automatisation de la production. Privilégiez toujours cette solution. TemplateName.
TemplateNameLe nom que vous avez saisi à l'étape 1Solution de remplacement pour la recherche. Renommer le modèle interrompt les appels qui le référencent par son nom.
ParseIdUn GUID que vous générez côté client (un par appel)Permet de mettre en corrélation votre requête avec le résultat de l'analyse syntaxique, utile pour la journalisation et les pistes d'audit.
docNameSource PDF nom de fichierUtilisé pour le suivi et les messages d'erreur.
docContentSource PDF encodé comme Base64Le fichier à analyser.
asyncfalse pour synchrone, true pour les sondagesContrôle la transmission des réponses.

Exemple REST Corps de la requête :

{
"docName": "invoice.pdf",
"docContent": "BASE64_ENCODED_PDF_CONTENT",
"TemplateId": "12345678-1234-1234-1234-123456789abc",
"ParseId": "87654321-4321-4321-4321-cba987654321",
"async": false
}

La réponse contient un champ par clé définie dans le modèle. Acheminez-la. JSON vers n'importe quel nœud en aval : Google Sheets, Airtable, une base de données, Excel ou un webhook.

Flux de travail courants

Modèles d'analyse syntaxique typiquesHow a saved parse template moves from dashboard to production.
Boîte de réception des factures vers feuille de calcul comptable
  1. Une facture de fournisseur PDF arrive dans un e-mail surveillé ou un dossier cloud.
  2. Make, Zapier, Power Automate, ou n8n appelle Parse Document avec votre TemplateId.
  3. La structure JSON La valeur de output (invoiceNumber, totalAmount, invoiceDate) est ajoutée comme ligne dans Google Sheets ou Excel.
  4. Le service comptable vérifie et approuve directement à partir de la feuille de calcul.
Formulaire de saisie enregistré dans la base de données
  1. Un client télécharge un formulaire rempli PDF formulaire via votre portail.
  2. Votre backend appelle Parse Document avec TemplateId et le Base64 PDF.
  3. Le analysé JSON est mappé dans une requête INSERT de base de données, avec une colonne par clé de modèle.
  4. Un courriel de confirmation est renvoyé au client en utilisant son nom et son numéro de référence.
classificateur et extracteur de documents
  1. Un seul dossier surveillé reçoit des documents variés (factures, commandes, contrats).
  2. UN JavaScript La clé d'expression dans le modèle renvoie le type de document (voir l'exemple 2 ci-dessus).
  3. Votre flux de travail achemine chaque fichier vers le système en aval approprié en fonction du type renvoyé.
  4. Les fichiers identifiés comme factures continuent de faire l'objet d'une extraction de champs basée sur les expressions régulières dans le même appel de modèle.

meilleures pratiques de configuration des modèles

  • Dessinez des zones de capture légèrement plus grandes que la valeur attendue afin que le décalage de la police ou de la position ne fasse pas sortir la valeur du cadre.
  • Veillez à ce que les noms de clés soient cohérents en camelCase dans tous les modèles afin que le mappage en aval dans les feuilles de calcul, les bases de données et les webhooks reste prévisible.
  • Testez chaque clé sur au moins trois exemples réels, y compris les cas limites comme les champs optionnels manquants, les factures en deuxième page, et OCR-texte dérivé de scans PDFs.
  • Utiliser JavaScript N'utilisez l'expression que lorsque les expressions régulières ne permettent pas d'exprimer la règle. Une logique simple facilite le débogage du modèle.
  • Versionnez vos modèles par nom (invoice-v1, invoice-v2) lors de la mise en œuvre de changements importants, afin que l'automatisation de la production puisse migrer à son propre rythme.
  • Exécuter l'analyse PDFs à travers OCR premier (le PDF4me OCR point de terminaison) avant l'analyse. Les modèles sont extraits de la couche de texte, qui a été analysée. PDFs n'ont pas jusqu'à OCR est appliqué.

Actions connexes

Analyser le document API
REST point de terminaison qui exécute votre modèle enregistré sur n'importe quel PDF en utilisant TemplateId et des rendements structurés JSON.
Configurer la classification des documents
Guide d'utilisation pour les sorties par catégorie uniquement, sans extraction de champs. Utile comme étape préliminaire avant l'analyse du document.
Analyser le document dans Make
Appliquez votre modèle dans des flux de travail visuels avec des modules de routage, de stockage et de notification en aval.
Analyser le document dans Zapier
Exécuter l'analyse de modèle à partir d'un déclencheur SaaS Automatisations dans plus de 6 000 applications.
Analyser le document dans Power Automate
Intégrer la sortie d'analyse avec Microsoft 365 flux d'approbation, SharePoint des dossiers et Dynamics pipelines.
Analyser le document dans n8n
Flux de travail auto-hébergé avec regex ou JavaScript expression basée PDF extraction de données, et contrôle total des nœuds en aval.

Foire aux questions

Should I use Regex Expression or JavaScript Expression first?+
Start with Regex Expression for fixed-shape fields like invoice numbers, dates, totals, and tax IDs. Move to JavaScript Expression when extraction depends on multiple conditions, fallback rules, or document classification. Most production templates use Regex for around 80% of keys and JavaScript for the rest.
Where does the text variable in JavaScript Expression come from?+
PDF4me passes the extracted text of the captured region (or the full PDF when Search Whole Page is enabled) into the expression context as the variable named text. Your function evaluates that string and returns a string for the configured key.
Does parse template extraction work on scanned PDFs?+
Yes, when the PDF has been OCR-processed first. Scanned PDFs are images until OCR is applied. Run the source file through the PDF4me OCR endpoint or upload an already-OCR'd PDF to the dashboard before drawing capture areas. The template then extracts from the OCR text layer.
Can one template handle multiple invoice layouts?+
It can absorb small differences in font, position, or page count. For genuinely different layouts (two vendors with different invoice designs) create separate templates and route files to the right one by classifier or source system before calling Parse Document.
What do I need to call the parse template from the API?+
Send docName, docContent (the PDF as Base64), TemplateId (the GUID copied from the dashboard after Save Changes), ParseId (a client-generated GUID), and async (false for immediate response, true for polling). TemplateName works instead of TemplateId but TemplateId is recommended for stable automation.
How do I move extracted data into Excel, Google Sheets, or a database?+
The parse output is structured JSON, with one field per key you defined in the template. Route that JSON to any destination from your automation platform: Add Row in Google Sheets, Insert Row in Airtable or a database, or write to Excel via the Excel module in Make, Power Automate, n8n, or Zapier. The same TemplateId works on every platform.
How does this compare with Python PDF data extraction libraries?+
Tools like pdfplumber, PyMuPDF, and pdfminer give you raw extraction primitives in Python, but you write and maintain the matching logic yourself. PDF4me parse templates give you a saved, named template you configure once in a dashboard and call from any language or platform. Use Python libraries when you need full programmatic control inside a single codebase; use PDF4me parse templates when you want the same extraction running across the REST API, Make, Zapier, Power Automate, and n8n without copying logic between systems.
How should I test a parse template before production?+
Validate each key against at least three real samples, including edge cases such as missing optional fields, alternate fonts, multi-page documents, and second-page positions. Use Test Parse in the dashboard for each sample, confirm the output matches expectations, then run a small automation against live files in monitor mode before enabling end-to-end automation.
How do I connect this setup to no-code platforms?+
Use the platform-specific guides under Related actions. Each platform exposes the same TemplateId and ParseId fields so the parsing logic stays identical to what you tested in the dashboard. The output structure also matches across platforms.

Obtenez de l'aide