Com automatitzar l'extracció de dades de PDFs de múltiples pàgines amb Aspose.OCR

Com automatitzar l'extracció de dades de PDFs de múltiples pàgines amb Aspose.OCR

Els PDFs de múltiples pàgines dels escàners, els arxius o els fluxos de treball corporatius sovint tenen una gran quantitat de text i taules no buscables. L’extracció manual és lenta i no escalable. Aspose.OCR per .NET automatitza l’extrakció de textos, tauletes i estructures de llarg i complex PDF amb codi mínim.

El problema del món real

Els arxius legals, financers i acadèmics es tracten regularment amb PDFs escanats multipages que contenen centenars de pàgines.

Revisió de solucions

Aspose.OCR per .NET pot processar i extreure text / taules de cada pàgina en un PDF de múltiples pàgines. pot especificar rangs de pàgina, formats d’exportació i integració automàtica amb aplicacions de negoci o arxius digitals.

Prerequisits

  • Visual Studio 2019 o posterior
  • .NET 6.0 o posterior (o .Net Framework 4.6.2+)
  • Aspose.OCR per a .NET des de NuGet
  • Capacitat de programació C#
PM> Install-Package Aspose.OCR

Implementació de pas a pas

Pas 1: Instal·la i configura Aspose.OCR

using Aspose.OCR;

Pas 2: Afegir arxius PDF de múltiples pàgines

OcrInput input = new OcrInput(InputType.PDF);
input.Add("archive.pdf"); // all pages
input.Add("report.pdf", 5, 10); // pages 5-14

Pas 3: Configure les configuracions de reconeixement i rangs de pàgines

RecognitionSettings settings = new RecognitionSettings();
settings.Language = Language.English;
settings.DetectAreasMode = DetectAreasMode.AUTO;

Pas 4: Extraure text i taules de cada pàgina

AsposeOcr ocr = new AsposeOcr();
List<RecognitionResult> results = ocr.Recognize(input, settings);

Pas 5: Resultats d’exportació per a cada pàgina

int page = 1;
foreach (RecognitionResult result in results)
{
    result.Save($"output_page_{page}.txt", SaveFormat.Text);
    result.Save($"output_page_{page}.xlsx", SaveFormat.Xlsx);
    result.Save($"output_page_{page}.json", SaveFormat.Json);
    page++;
}

Pas 6: Resoldre errors i validar les dades

try
{
    AsposeOcr ocr = new AsposeOcr();
    List<RecognitionResult> results = ocr.Recognize(input, settings);
}
catch (Exception ex)
{
    Console.WriteLine($"Error: {ex.Message}");
}

Pas 7: Optimitzar per a grans arxius i llocs de treball

  • Processar PDFs en mapes per directori
  • Utilitzar el processament selectiu de pàgines per a la velocitat
  • Monitorització de la memòria/CPU
foreach (string file in Directory.GetFiles("./pdfs", "*.pdf"))
{
    input.Add(file);
}

Capítol 8: Exemple complet

using Aspose.OCR;
using System;
using System.Collections.Generic;
using System.IO;

class Program
{
    static void Main(string[] args)
    {
        try
        {
            OcrInput input = new OcrInput(InputType.PDF);
            input.Add("archive.pdf");
            input.Add("report.pdf", 5, 10);

            RecognitionSettings settings = new RecognitionSettings();
            settings.Language = Language.English;
            settings.DetectAreasMode = DetectAreasMode.AUTO;

            AsposeOcr ocr = new AsposeOcr();
            List<RecognitionResult> results = ocr.Recognize(input, settings);

            int page = 1;
            foreach (RecognitionResult result in results)
            {
                result.Save($"output_page_{page}.txt", SaveFormat.Text);
                result.Save($"output_page_{page}.xlsx", SaveFormat.Xlsx);
                result.Save($"output_page_{page}.json", SaveFormat.Json);
                page++;
            }
        }
        catch (Exception ex)
        {
            Console.WriteLine($"Error: {ex.Message}");
        }
    }
}

Utilitzar casos i aplicacions

Arxiu legal i de conformitat

L’extracció de continguts complets de contractes, peticions judicials o registres governamentals per a la recerca i el compliment.

Arxiu acadèmic i de recerca

Digitalitzar i dividir revistes, tesis o taules de dades per a l’anàlisi o e-learning.

Fluxos de treball financer i d’auditoria

Extracció automàtica de grans arxius de declaracions, informes i tauletes.

Els reptes i les solucions comunes

Challenge 1: Layouts de pàgines inconsistents

Solució: Utilitzeu la detecció AUTO o configureu diferents modes per interval de pàgina.

Títol 2: PDFs molt grans

Solució: Processament en batxes; arxius dividits per a millors rendiments de la memòria.

Challenge 3: Contingut mixt (Text, taules, imatges)

Solució: Validació i sortida postprocés; mode de detecció de tune.

Consideracions de rendiment

  • Els grans PDF requereixen més memòria/CPU
  • Batch treballs off-hours per al millor rendiment
  • Validar les mostres de producció abans de la integració

Les millors pràctiques

  • Utilitzar les convencions de nomenament per a un seguiment fàcil
  • Compartir PDFs multipàgins si els arxius són molt grans
  • Assegureu els documents de font i de sortida
  • Validació i verificació de resultats en fluxos de treball crítics

Escenaris avançats

Escenari 1: Exportació a PDF buscable per pàgina

foreach (RecognitionResult result in results)
{
    result.Save($"output_page_{page}.pdf", SaveFormat.Pdf);
    page++;
}

Escenari 2: Integració amb la base de dades o el núvol

foreach (RecognitionResult result in results)
{
    string json = File.ReadAllText($"output_page_{page}.json");
    // Upload json or send to a cloud endpoint
}

Conclusió

Aspose.OCR per a .NET permet una extracció robusta i escalable de text i dades estructurades de PDFs de múltiples pàgines, cosa que salva hores d’esforç manual i millora l’automatització del flux de treball.

Veure més exemples de processament de PDF i batxets en el Aspose.OCR per a .NET API Referència .

 Català