Kā automatizēt datu ekstrakciju no daudzu lapu PDF ar Aspose.OCR

Kā automatizēt datu ekstrakciju no daudzu lapu PDF ar Aspose.OCR

Vairāku lapu PDF no skaneriem, arhīviem vai korporatīvajiem darba plūsmiem bieži aiztur milzīgu daudzumu nepieejamu teksta un tabulu. rokas ekstrakcija ir lēna un neskalējama. Aspose.OCR .NET automātiski izņem tekstu, tabulas un struktūru no garām, sarežģītām PDF ar minimālo kodu.

Reālā pasaules problēma

Juridiskie, finanšu un akadēmisko arhīvi regulāri apstrādā ar vairāku lapu skanētu PDF, kas satur simtiem lappušu.

Risinājumu pārskats

Aspose.OCR for .NET var pakāpeniski apstrādāt un no katras lapas izrakstīt tekstu / tabulas vairākās lappusēs PDF. Jūs varat noteikt lapu rindas, eksporta formātus un automātisku integrāciju ar uzņēmējdarbības lietojumprogrammām vai digitālajiem arhīviem.

Prerequisites

  • Visual Studio 2019 vai vēlāk
  • .NET 6.0 vai jaunāks (vai .Net Framework 4.6.2+)
  • Aspose.OCR par .NET no NuGet
  • C# programmēšanas prasmes
PM> Install-Package Aspose.OCR

Step-by-step īstenošana

1. solis: Uzstādīt un konfigurēt Aspose.OCR

using Aspose.OCR;

2. solis: Pievienojiet vairāku lapu PDF failus

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

3. solis: Iestatīt atpazīšanas iestatījumus un lapas rindas

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

4. solis: Izņemt tekstu un tabulas no katras lapas

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

5. solis: Eksporta rezultāti katrai lapai

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++;
}

6. solis: Pārvaldīt kļūdas un validēt datus

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

7. solis: Optimizējiet lielas failu un batch darbavietas

  • Pārstrādā PDF failiem pēc adresēm
  • Izmantojiet selektīvu lapas apstrādi ātrumam
  • Atmiņas / CPU izmantošana
foreach (string file in Directory.GetFiles("./pdfs", "*.pdf"))
{
    input.Add(file);
}

8. solis: pilns piemērs

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}");
        }
    }
}

Izmantojiet gadījumus un pieteikumus

Juridiskā un atbilstības arhīva

Ievadiet pilnu saturu līgumiem, tiesas iesniegumiem vai valdības ierakstiem meklēšanas un atbilstības nolūkā.

Akadēmiskais un pētniecības arhīvs

Digitalizēt un sadalīt žurnālus, tēmas vai datu tabulas analīzei vai e-apmācībai.

Finanšu un revīzijas darba plūsmas

Automātiska ekstrakcija no lieliem paziņojumu arhīviem, ziņojumiem un skatiem.

Kopīgi izaicinājumi un risinājumi

1. izaicinājums: nesaskaņoti lapu izkārtojumi

Rīze: Izmantojiet AUTO detekciju vai iestatīt dažādas režīmas pēc lapas diapazonas.

Izteikums 2: ļoti lieli PDF

Rīkojums: Procesu komplekti; sadalīti faili labāku atmiņas veiktspēju.

3. izaicinājums: sajaukts saturs (teksts, tabulas, attēli)

Solutions: Validate un post-process outputs; tune detekcijas režīms.

Darbības apsvērumi

  • Lieliem PDF datoriem nepieciešama lielāka atmiņa/CPU
  • Batch darbavietas off-hours par labāko sniegumu
  • Iegūto paraugu apstiprināšana pirms integrācijas

Labākās prakses

  • Izmantojiet nosaukuma konvencijas vieglai izsekojumam
  • Daudzu lapu PDF sadalīšana, ja faili ir ļoti lieli
  • Aizsargā gan avotu, gan izejas dokumentus
  • Validēt un uzraudzīt rezultātus kritiskajos darba plūsmos

Augstākie scenāriji

Scenārija 1: Eksportēt uz meklējamiem PDF lapas

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

2. scenārijs: Integrēt ar datubāzi vai mākoņu

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

Conclusion

Aspose.OCR for .NET nodrošina spēcīgu, skalējamu teksta un strukturētu datu ekstrakciju no vairāku lapu PDF - ietaupot stundas manuālās pūles un uzlabojot darba plūsmas automatizāciju.

Skatīt vairāk PDF un batch apstrādes piemēru Aspose.OCR par .NET API atsauci .

 Latviski