Aller au contenu principal

Convertir PDF à Excel

PDF4me Convertir PDF à Excel est un REST point de terminaison qui extrait des tableaux et du texte d'un PDF et renvoie un objet modifiable Excel cahier d'exercices. POST un Base64 PDF à /api/v2/ConvertPdfToExcel, choisissez Brouillon ou Haute qualité, activer OCR pour scanné pageset enregistrez le résultat .xlsx octets. Un seul appel, aucune ressaisie manuelle.

Que fait ce point de terminaison ?

Envoie un PDF entre, en obtient un Excel Le classeur est exporté. Le moteur détecte les structures de tableau sur chaque page et les reconstruit sous forme de cellules de feuille de calcul, en extrayant le texte environnant. qualityType alterne entre l'extraction rapide de la couche texte (Brouillon) et la reconnaissance page par page pour les numérisations (Haut), et ocrWhenNeeded court OCR automatiquement lorsqu'une page ne contient pas de couche de texte. La réponse est le texte brut. .xlsx binaire (200) ou un Location sondage URL (202).

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 API Demande

Chaque PDF4me REST L'appel doit inclure votre API clé dans le Authorization En-tête : Authentification de base. Récupérez ou renouvelez votre clé depuis le tableau de bord développeur.

Point de terminaison

POST/api/v2/ConvertPdfToExcel

Informations importantes à ne pas manquer

Les formules Draft et High sont facturées différemment.
Coût du brouillon 1 API Appel par fichier et lecture de la couche de texte existante. Coûts élevés 2 API Il effectue des appels par page et retraite chaque page, ce qui rend le scanné PDFs travail. Ne pas faire fonctionner à haute vitesse sur des données numériques propres PDFsVous payez à la page pour rien.
outputFormat et ocrWhenNeeded sont des booléens
Les exemples de code officiels envoient vrai / FAUX JSON Des valeurs booléennes pour les deux champs. Les anciennes versions de cette page affichaient des chaînes de caractères comme "Oui"; utilisez des booléens comme dans les exemples ci-dessous.
Async renvoie 202 + Location en-tête
Avec asynchrone : vrai le API peut répondre 202 avec un Location en-tête. GET que URL (même Authorization) jusqu'à ce qu'elle renvoie 200 avec le fichier binaire du classeur. Les exemples officiels interrogent le système toutes les 10 secondes, jusqu'à 10 tentatives.

HTTP installation

Méthode: POST
URL: https://api.pdf4me.com/api/v2/ConvertPdfToExcel
Type de contenu : application/json
Authorization: Basique <votre PDF4me API clé>

Envoyer asynchrone : vrai dans le corps. 200 renvoie la valeur convertie .xlsx classeur sous forme d'octets binaires. 202 renvoie un Location En-tête avec un sondage URL; GET que URL avec le même Authorization en-tête jusqu'à ce qu'il renvoie 200 avec le fichier binaire du classeur.

Quel mode de qualité dois-je choisir : Draft ou High ?

Draft lit la couche de texte déjà existante à l'intérieur d'un élément créé numériquement. PDFLe mode « Haute résolution » effectue un rendu complet et reconnaît chaque page. Plus lent et plus coûteux, il est cependant le seul compatible avec les numérisations, les photos de documents et les images seules. pages.

Draft vs HighBrouillonHaut
Idéal pourCréé numériquement PDFs avec texte sélectionnableNumérisé ou basé sur une image PDFs
Coût1 API appel par fichier2 API appels par page
OCRNon appliquéAppliqué par page (à associer avec ocrWhenNeeded: true)
VitessePassage rapide et uniqueReconnaissance plus lente, page par page
Quand les tables reviennent videsRéessayer avec une valeur élevéeVérifier language si le texte est brouillé

API champs corporels

ParamètreRequisTaperCe que cela faitExemple
docContentRequiredstringBase64-encoded bytes of the source PDF. Strip any data:application/pdf;base64, prefix before posting.JVBERi0xLjcK...
docNameRequiredstringSource filename including the .pdf extension. Used to derive the output filename.invoice-report.pdf
qualityTypeRequiredstringDraft for text-based PDFs (1 API call per file). High for scanned or image-based PDFs (2 API calls per page).Draft
languageConditionalstringLanguage of the text in the source file. Set only when the converted output is not recognizable; otherwise let the engine detect it.English
mergeAllSheetsOptionalbooleantrue combines all extracted content into a single worksheet. false keeps content on separate worksheets.true
outputFormatOptionalbooleanOutput format flag sent as a JSON boolean in the official samples.true
ocrWhenNeededOptionalbooleanRuns OCR automatically on pages without a text layer. Keep true unless you explicitly want recognition skipped.true
asyncOptionalbooleantrue enables the 202 + Location polling pattern, recommended for large or scanned files.true

Exemples de charges utiles

Mode brouillon. numérique PDF avec texte sélectionnable

{
"docContent": "JVBERi0xLjcKJcfsj6IKNSAwIG9iago8PAovVHlwZSAvQ2F0YWxvZw...",
"docName": "invoice-report.pdf",
"qualityType": "Draft",
"mergeAllSheets": true,
"outputFormat": true,
"ocrWhenNeeded": true,
"async": true
}

Mode élevé. Scanné PDF avec OCR

{
"docContent": "JVBERi0xLjcKJcfsj6IKNSAwIG9iago8PAovVHlwZSAvQ2F0YWxvZw...",
"docName": "scanned-statement.pdf",
"qualityType": "High",
"mergeAllSheets": false,
"language": "English",
"outputFormat": true,
"ocrWhenNeeded": true,
"async": true
}

Conseils pour la collecte par le facteur

Headers
Content-Type: application/json + Authorization: Basic <apiKey>.
Body
raw JSON. Copy one of the payloads above and replace docContent with your Base64.
Response
Use Send and Download so Postman saves the binary body as a .xlsx file when status is 200. If 202, GET the Location URL with the same Authorization until 200.
Quality
Start with Draft. Only switch to High when tables come back empty, and expect 2 API calls per page in that mode.

Exemple curl

curl -X POST https://api.pdf4me.com/api/v2/ConvertPdfToExcel \
-H "Content-Type: application/json" \
-H "Authorization: Basic YOUR_API_KEY" \
-d '{
"docContent": "'"$(base64 -w 0 invoice-report.pdf)"'",
"docName": "invoice-report.pdf",
"qualityType": "Draft",
"mergeAllSheets": true,
"outputFormat": true,
"ocrWhenNeeded": true,
"async": true
}' \
--output converted.xlsx

Que signifie le API retour?

Une conversion réussie permet de récupérer Excel Le cahier d'exercices lui-même, et non un JSON enveloppe. Le résultat est un moderne Office Open XML cahier d'exercices (.xlsx), la valeur par défaut XML-format basé pris en charge par toutes les versions actuelles de ExcelTraitez les trois cas ci-dessous.

ChampTaperCe qu'il contient
Response body (HTTP 200)BinaryThe converted .xlsx workbook bytes. Write them straight to a file with an .xlsx extension.
Location header (HTTP 202)String (URL)Poll URL for an async job that is still running. GET it with the same Authorization header.
Poll response (HTTP 200)BinaryThe finished workbook, returned once processing completes. The official samples poll every 10 seconds, up to 10 retries.
Poll response (HTTP 202)EmptyJob still processing. Wait and poll the same Location URL again.

Exemples de code

Des implémentations complètes fonctionnelles, chacune avec un exemple PDF et la charge utile exacte de cette page :

FAQ

Which quality mode should I choose, Draft or High?+
Draft is for digitally created PDFs with a real text layer and costs 1 API call per file. High is for scanned or image-based PDFs and costs 2 API calls per page. Start with Draft; switch to High only when tables come back empty or garbled.
Can the API extract tables from a scanned PDF?+
Yes. Set qualityType to High and ocrWhenNeeded to true. The engine runs OCR on pages without a text layer and reconstructs detected tables as spreadsheet cells in the output workbook.
What does mergeAllSheets do?+
With mergeAllSheets true the extracted content is combined into a single worksheet. With false, content is kept on separate worksheets, so a multi-page PDF maps to multiple sheets in the workbook.
When do I need the language field?+
Only when the converted output is not recognizable. The engine detects the document language automatically; set language explicitly when recognition returns garbled text for your source language.
Is the response JSON or the file itself?+
The file itself. A 200 response body is the raw .xlsx binary. Do not JSON-parse it; write the bytes to disk. Only the 202 case involves reading a header (Location) instead of the body.
My tables came back as plain text without cell structure. What now?+
Rerun with qualityType High so each page goes through recognition, and keep ocrWhenNeeded true. If the text itself is garbled rather than misplaced, set the language field to match the document.
How large can the PDF be?+
Large and scanned files are exactly what the async pattern is for. Send async true and be prepared to poll the Location URL; the official samples poll every 10 seconds, up to 10 retries, before timing out.
Can I get XLS instead of XLSX?+
No. The endpoint returns a modern Open XML workbook (.xlsx). Legacy .xls output is not offered; every current version of Excel, LibreOffice, and Google Sheets opens .xlsx.

Actions connexes

Même tâche sur d'autres plateformes

Obtenez de l'aide