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 .