Jak zautomatyzować ekstrakcję danych z plików PDF z Aspose.OCR

Jak zautomatyzować ekstrakcję danych z plików PDF z Aspose.OCR

Większość stron plików PDF z skanery, archiwów lub przepływów roboczych korporacyjnych często posiada ogromne ilości niechcianych tekstów i tabel. Ręczna ekstrakcja jest powolna i nie skalowalna. Aspose.OCR dla .NET automatyzuje wydobycie tekstu, tabeli i struktury z długich, złożonych płytek PDF o minimalnym kodzie.

Problem świata rzeczywistego

Archiwum prawnicze, finansowe i akademickie regularnie obsługuje skanowane na wielu stronach pliki PDF zawierające setki stron.

Przegląd rozwiązania

Aspose.OCR dla .NET może przetwarzać i wyciągać tekst / tabele z każdej strony w pliku PDF z wielu stron. Możesz określić rzędy stron, formaty eksportu i automatyczną integrację z aplikacjami biznesowymi lub archiwum cyfrowym.

Warunki

  • Visual Studio 2019 lub później
  • .NET 6.0 lub nowszy (lub .Net Framework 4.6.2+)
  • Aspose.OCR dla .NET od NuGet
  • Podstawowe umiejętności programowania C#
PM> Install-Package Aspose.OCR

Wdrażanie krok po kroku

Krok 1: Instalacja i konfiguracja Aspose.OCR

using Aspose.OCR;

Krok 2: Dodaj pliki PDF z wielu stron

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

Krok 3: Konfiguruj ustawienia rozpoznawania i pozycje stron

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

Krok 4: Wyciągnij tekst i tabele z każdej strony

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

Krok 5: Wyniki eksportu dla każdej strony

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

Krok 6: Rozwiązywanie błędów i weryfikacja danych

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

Krok 7: Optymalizacja dla dużych plików i miejsc pracy

  • Przetwarzanie plików PDF w folderach według katalogu
  • Użyj selektywnego przetwarzania strony dla prędkości
  • Monitorowanie pamięci / wykorzystanie CPU
foreach (string file in Directory.GetFiles("./pdfs", "*.pdf"))
{
    input.Add(file);
}

Krok 8: Pełny przykład

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

Korzystanie z przypadków i aplikacji

Prawo i zgodność Archiwum

Wyciągnij pełną zawartość umów, sprawozdań sądowych lub rejestrów rządowych w celu wyszukiwania i zgodności.

Archiwum akademickie i badawcze

Digitalizuj i podziel czasopisma, tezy lub tabele danych do analiz lub e-learningu.

Przepływ pracy finansowej i audytu

Automatyczna ekstrakcja z dużych archiwów oświadczeń, raportów i arkuszy.

Wspólne wyzwania i rozwiązania

Wyzwanie 1: nierozerwalne ustawienia stron

Rozwiązanie: Użyj detekcji AUTO lub ustaw różne tryby według zakresu stron.

Wyzwanie 2: Bardzo duże pliki PDF

Rozwiązanie: Proces w zestawach; rozdzielone pliki dla lepszej wydajności pamięci.

Wyzwanie 3: Zawartość mieszana (tekst, tabele, obrazy)

Rozwiązanie: Validate i post-proces outputs; tryb wykrywania tonu.

uwzględnienie wydajności

  • Wielkie pliki PDF wymagają większej pamięci/CPU
  • Zatrudnienie pracy off-hours dla najlepszych wyników
  • Zweryfikuj próbki wyjściowe przed zintegrowaniem

Najlepsze praktyki

  • Użyj konwencji nazwowych dla łatwego śledzenia
  • Podziel się plikami PDF, jeśli pliki są bardzo duże
  • Zabezpieczenie zarówno dokumentów źródłowych, jak i wyjściowych
  • Validacja i spot-check wyników w krytycznych przepływach pracy

Zaawansowane scenariusze

Scenariusz 1: Eksportowanie do wyszukiwanego PDF na stronę

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

Scenariusz 2: Integracja z bazą danych lub chmurą

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

konkluzja

Aspose.OCR dla .NET umożliwia solidną, skalowalną ekstrakcję tekstu i strukturowane dane z wielu stron PDF – oszczędza godziny ręcznego wysiłku i poprawia automatyzację przepływu pracy.

Zobacz więcej przykładów przetwarzania plików PDF i batch w Aspose.OCR dla .NET API Referencje .

 Polski