Prepara le informazioni di analisi per il documento
Cosa tratta questa guida
Prepara le informazioni di analisi è la configurazione del cruscotto che trasforma un grezzo PDF in automatizzato PDF estrazione dati. Definisci le chiavi di acquisizione, disegni le zone su un documento di esempio e assegni a ciascuna chiave una regola di estrazione utilizzando Espressione regolare per modelli stabili o JavaScript Espressione per la logica condizionale. Una volta salvato, lo stesso modello viene eseguito da REST API, Make, Zapier, Power Automate, E n8n facendo riferimento al suo TemplateId.
Autenticazione della configurazione
La creazione del modello di analisi avviene nel PDF4me dashboard sviluppatore. Accedi con il tuo account, quindi crea o copia un API chiave per il documento di analisi API chiamate che utilizzano il modello che crei qui.
Informazioni importanti da non perdere
TemplateId per il modello. Passa sempre TemplateId in produzione API chiamate. TemplateName Funziona anche così, ma rinominare il modello interrompe qualsiasi automazione che lo richiami per nome.Passaggio 1: Creare il modello di analisi
- Apri il Dashboard di analisi dei documenti.
- Fare clic Aggiungere e inserire un nome di modello chiaro (ad esempio,
invoiceOvendor-statement). - Fare clic Salva per creare il modello vuoto.
- Apri il modello in Modificare modalità per iniziare a configurare i tasti di acquisizione.

Passaggio 2: Carica un campione e configura i tasti di acquisizione
La dashboard visualizza un caricamento PDF sulla destra e mostra il Analizza le informazioni Modulo a sinistra. Utilizza campioni reali con la forma di quelli di produzione, non file di test sintetici, in modo che le aree di acquisizione corrispondano a ciò che vedrai nel traffico reale.
- Fare clic Carica il file modello e selezionare un campione rappresentativo (fattura, contratto, modulo).
- Sotto Chiavi, clicca + Per aggiungere un tasto di acquisizione. Assegnagli un nome in formato camelCase:
invoiceNumber,customerName,totalAmount. - Scegliere Scegli il tipo di attività per la legenda:
Javascript ExpressionORegex Expression. - Incolla il corpo dell'espressione nel campo che appare.
- Impostato Pagine A
allper scansionare ogni pagina o fino a un numero di pagina specifico (1,2, ecc.) per limitare l'ambito. - Attiva/disattiva Cerca nell'intera pagina Si attiva quando il valore non si trova in una posizione fissa. Disattivandola, viene effettuata la ricerca solo nell'area di cattura disegnata.

Schermata di configurazione di Parse Document. A sinistra: modulo Parse Info con chiavi e tipo di espressione. A destra: esempio caricato. PDFI pulsanti di azione sono disposti da sinistra a destra: Carica file modello, Verifica analisi, Salva modifiche.
Passaggio 3: Selezionare il tipo di espressione per chiave
| Tipo di espressione | Ideale per | Uso tipico | Complessità |
|---|---|---|---|
| Regex Expression | Fixed text patterns | Invoice number, dates, totals, tax IDs, postal codes | Low |
| JavaScript Expression | Conditional and multi-rule extraction | Document classification, fallback logic, rule orchestration | Medium to High |
Modelli di espressioni regolari (nozioni di base sull'analisi PDF tramite espressioni regolari)
Utilizzo Espressione regolare quando il campo ha una forma stabile e prevedibile. L'area catturata viene scansionata per la prima corrispondenza.
INV-\d{6,10}
\d{2}/\d{2}/\d{4}
\$?\d{1,3}(?:,\d{3})*(?:\.\d{2})?
Mappature dei tasti comuni per una fattura:
invoiceNumber→INV-\d{6,10}invoiceDate→\d{2}/\d{2}/\d{4}totalAmount→\$?\d{1,3}(?:,\d{3})*(?:\.\d{2})?
Questi stessi schemi funzionano anche per gli stessi campi negli estratti conto dei fornitori, negli ordini di acquisto e nei documenti di spedizione, poiché i numeri di fattura, le date e gli importi hanno la stessa struttura nella maggior parte dei documenti aziendali.
JavaScript Espressione per la logica condizionale
Utilizzo JavaScript Espressione quando l'output dipende dalla presenza o dalla combinazione di più marcatori nel documento. PDF4me passa il testo estratto alla tua funzione come variabile textLa tua funzione valuta il testo e restituisce una stringa che diventa il valore per la chiave.
Esempio 1: classificare in base ai marcatori di contenuto
Distingue un documento di Termini e Condizioni da un documento d'Ordine verificando quali frasi di riferimento compaiono:
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);
Esempio 2: rilevamento fattura vs ordine
Un breve classificatore che decide se il documento è una fattura o un ordine in base alla presenza delle parole invoice E 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);
Suggerimento per l'implementazione: Avvolgi la tua logica in una funzione denominata e chiamala con restituisci functionName(text); in basso. La dashboard esegue il corpo dell'espressione come una funzione il cui valore finale restituito popola la chiave.
Passaggio 4: Testare l'analisi e salvare le modifiche
I pulsanti di azione nella parte superiore dell'editor sono disposti da sinistra a destra, nell'ordine in cui vengono utilizzati:
- Carica il file modello carica il campione PDF Utilizzato per disegnare aree di cattura.
- Analisi del test esegue tutte le chiavi rispetto al campione caricato e mostra i valori estratti in linea. Usalo per convalidare ogni Regex o JavaScript espressione prima del salvataggio.
- Salva le modifiche persiste il modello e assegna un valore stabile TemplateId (GUID). Copia quel GUID per usarlo in API piattaforme per chiamate e automazione.
Itera su ogni tasto finché Analisi del test Restituisce il valore atteso per ogni campo. Restringi l'area di acquisizione se vedi del testo adiacente, oppure perfeziona l'espressione se le corrispondenze del modello sono troppo ampie.
Utilizzare il modello in API o chiamate di automazione
Una volta Salva le modifiche assegna un TemplateIdLo stesso modello di analisi viene eseguito ovunque tramite riferimento. Non è necessario ricreare la configurazione su ogni piattaforma.
| Campo | Fonte | Scopo |
|---|---|---|
TemplateId | GUID visualizzato nel pannello dei dettagli del modello dopo il salvataggio | Identificatore stabile per l'automazione della produzione. Preferisco sempre questo a TemplateName. |
TemplateName | Il nome che hai digitato nel passaggio 1 | Alternativa per la ricerca. Rinominare il modello interrompe le chiamate che lo referenziano per nome. |
ParseId | Un GUID che generi lato client (uno per chiamata) | Correlaziona la tua richiesta con l'output del parsing, utile per la registrazione e la tracciabilità delle operazioni. |
docName | Fonte PDF nome file | Utilizzato per il tracciamento e i messaggi di errore. |
docContent | Fonte PDF codificato come Base64 | Il file da analizzare. |
async | false per sincrono, true per i sondaggi | Controlla l'erogazione della risposta. |
Esempio REST corpo della richiesta:
{
"docName": "invoice.pdf",
"docContent": "BASE64_ENCODED_PDF_CONTENT",
"TemplateId": "12345678-1234-1234-1234-123456789abc",
"ParseId": "87654321-4321-4321-4321-cba987654321",
"async": false
}
La risposta contiene un campo per ogni chiave definita nel modello. Instradalo JSON in qualsiasi nodo a valle: Google Sheets, Airtableun database, Excel o un webhook.
Flussi di lavoro comuni
Modelli tipici di analisi sintatticaHow a saved parse template moves from dashboard to production.
- Una fattura del fornitore PDF arriva in una casella di posta elettronica monitorata o in una cartella cloud.
- Make, Zapier, Power Automate, O n8n chiama Analizza documento con il tuo TemplateId.
- La struttura JSON output (invoiceNumber, totalAmount, invoiceDate) viene aggiunto come riga in Google Sheets o Excel.
- L'ufficio contabilità esamina e approva direttamente dal foglio di calcolo.
- Un cliente carica un modulo compilato PDF modulo tramite il tuo portale.
- Il tuo backend chiama Analizza documento con TemplateId e il Base64 PDF.
- L'analisi JSON viene mappato in un'operazione INSERT del database, con una colonna per ogni chiave del modello.
- Un'e-mail di conferma viene inviata al cliente utilizzando il nome e il numero di riferimento elaborati.
- Una singola cartella monitorata riceve documenti di vario tipo (fatture, ordini, contratti).
- UN JavaScript La chiave di espressione nel modello restituisce il tipo di documento (vedere l'esempio 2 sopra).
- Il flusso di lavoro instrada ciascun file al sistema a valle corretto in base al tipo restituito.
- I file identificati come fatture proseguono con l'estrazione dei campi basata su espressioni regolari nella stessa chiamata al modello.
Procedure consigliate per la configurazione dei modelli
- Disegna aree di acquisizione leggermente più grandi del valore previsto, in modo che lo spostamento del carattere o della posizione non spinga il valore fuori dall'inquadratura.
- Mantieni i nomi delle chiavi coerenti in formato camelCase in tutti i modelli, in modo che la mappatura successiva in fogli di calcolo, database e webhook rimanga prevedibile.
- Testa ogni chiave su almeno tre esempi reali, inclusi casi limite come campi opzionali mancanti, fatture di seconda pagina e OCR-testo derivato dalla scansione PDFs.
- Utilizzo JavaScript Espressione solo laddove le espressioni regolari non possono esprimere la regola. Mantenere la logica semplice semplifica il debug del modello.
- Versione dei tuoi modelli per nome (
invoice-v1,invoice-v2) quando si apportano modifiche sostanziali, in modo che l'automazione della produzione possa migrare al proprio ritmo. - Esegui la scansione PDFs Attraverso OCR primo (il PDF4me OCR endpoint) prima dell'analisi. I modelli vengono estratti dal livello di testo, che è stato scansionato PDFs non avere fino a OCR viene applicato.