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.
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).
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
/api/v2/ConvertPdfToExcelInformations importantes à ne pas manquer
outputFormat et ocrWhenNeeded sont des booléensvrai / 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.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 High | Brouillon | Haut |
|---|---|---|
| Idéal pour | Créé numériquement PDFs avec texte sélectionnable | Numérisé ou basé sur une image PDFs |
| Coût | 1 API appel par fichier | 2 API appels par page |
| OCR | Non appliqué | Appliqué par page (à associer avec ocrWhenNeeded: true) |
| Vitesse | Passage rapide et unique | Reconnaissance plus lente, page par page |
| Quand les tables reviennent vides | Réessayer avec une valeur élevée | Vérifier language si le texte est brouillé |
API champs corporels
| Paramètre | Requis | Taper | Ce que cela fait | Exemple |
|---|---|---|---|---|
docContent | Required | string | Base64-encoded bytes of the source PDF. Strip any data:application/pdf;base64, prefix before posting. | JVBERi0xLjcK... |
docName | Required | string | Source filename including the .pdf extension. Used to derive the output filename. | invoice-report.pdf |
qualityType | Required | string | Draft for text-based PDFs (1 API call per file). High for scanned or image-based PDFs (2 API calls per page). | Draft |
language | Conditional | string | Language of the text in the source file. Set only when the converted output is not recognizable; otherwise let the engine detect it. | English |
mergeAllSheets | Optional | boolean | true combines all extracted content into a single worksheet. false keeps content on separate worksheets. | true |
outputFormat | Optional | boolean | Output format flag sent as a JSON boolean in the official samples. | true |
ocrWhenNeeded | Optional | boolean | Runs OCR automatically on pages without a text layer. Keep true unless you explicitly want recognition skipped. | true |
async | Optional | boolean | true 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
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.
| Champ | Taper | Ce qu'il contient |
|---|---|---|
| Response body (HTTP 200) | Binary | The 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) | Binary | The finished workbook, returned once processing completes. The official samples poll every 10 seconds, up to 10 retries. |
| Poll response (HTTP 202) | Empty | Job 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 :