Pytanie:
PDF to Spreadsheet Converter dla wyciągów bankowych
HugoRune
2014-06-26 23:24:33 UTC
view on stackexchange narkive permalink

Próbuję analizować wyciągi bankowe i wyciągi z kart kredytowych do formatu nadającego się do odczytu maszynowego .

Wyciągi bankowe są wydawane jako (niezabezpieczone ) Dokumenty PDF.

Szukam narzędzia, które może przekonwertować te dokumenty PDF na coś łatwiejszego do przetworzenia, na przykład .csv lub .xls

Dane w tych dokumentach są pokazane w dziwny format tabeli, np.

  DATA TEMAT KWOTA ZMIENNA LICZBA PÓL, W ZALEŻNOŚCI OD RODZAJU TRANSAKCJI. DWA PÓL MOGĄ BYĆ W TEJ SAMEJ LINII, A POJEDYNCZE POLE MOŻE OBEJMOWAĆ DWIE LINIE DATA TEMATU KWOTA ...  

Dodatkowe trudności obejmują:

  • Pojedynczy wpis można podzielić na dwie strony.
  • Nagłówek i stopka mają zmienną wysokość i zawartość.
  • Niektóre strony zawierają reklamy.

Dlatego szukam oprogramowania z następującymi funkcjami”:

  • Oprogramowanie powinno radzić sobie z dziwnym, wielowierszowym formatem wejściowym . Po prostu przeanalizowanie wszystkiego jako tabel o stałej szerokości, z jednym wierszem na wiersz wejściowy, wymagałoby później wielu edycji.

  • powinno działać w Windows , najlepiej Windows XP

  • nie powinien wymagać MS Office 10 lub nowszego. Najlepiej byłoby, gdyby w ogóle nie była to wtyczka pakietu Office, ale samodzielny program.

  • Nie powinien wymagać nadmiernej ręcznej interakcji podczas konwersji, ale także nie powinien nadmiernie korekta później. Pewna ilość interakcji jest dobra, jeśli zmniejsza potrzebę późniejszej edycji.

  • zdecydowanie preferowane byłoby narzędzie offline , ponieważ te pliki są poufne.

  • Z tego samego powodu preferowane są otwarte oprogramowanie lub duży, renomowany wydawca.

  • duże wsparcie podstawowa i aktywna społeczność dla tego narzędzia byłaby dużym plusem

  • Preferowane wolne oprogramowanie, ale umiarkowana jednorazowa inwestycja byłaby akceptowalna (jeśli wyraźnie przewyższa bezpłatne rozwiązanie)

  • Objętość tych plików PDF wynosi ograniczony. Na razie chcę przekonwertować mniej niż 100 plików, więc konwersja wsadowa 10000 plików nie jest priorytetem.

  • Nie ma problemu, jeśli oprogramowanie wymaga zaawansowanej wiedzy o regexp , parsowanie itp. Powinno być łatwiejsze niż pisanie własnego parsera od zera.

Dwa odpowiedzi:
user2893515
2015-07-08 15:23:07 UTC
view on stackexchange narkive permalink

Miałem ten sam problem - belgijski ING Bank dostarcza teraz wyciągi tylko w formacie pdf, z układem ± dokładnie takim, jak opisano w poście.

Próbowałem 4 lub 5 ekstraktorów tekstu Open Source. GhostScript - dzięki temu umieszczaniu w stackoverflow;

GhostScript to jedyny system operacyjny ekstraktor, który znalazłem, renderuje linie tak, jak na stronie. (pdftotext i przyjaciele mają tendencję do łamania linii w połowie.)

Następnie mały skrypt Perla bez problemu przeanalizował wyodrębniony plik txt do csv. Kolumny w tym ostatecznym pliku csv to Data; Saldo; AMOUNT; pole tekstowe1; pole tekstowe2; ...

Daty są łatwe do wykrycia za pomocą wyrażenia regularnego qr (\ d \ d- \ d \ d \ 20 \ d \ d).

Linia „DATA KWOTA TEMATU” jest również łatwa do wykrycia dzięki wyrażeniu regularnemu pasującemu do „+99.999,00” lub „-1,23” (europejski sposób zapisywania liczb) na końcu linii.

dziwny format wielowierszowy jest renderowany do csv jako

  • dziwna linia 1 w kolumnie pole tekstowe 1 ,

  • dziwna linia 2 w kolumnie pole tekstowe 2 ,

  • itp.

Nie używam zbytnio tych informacji, więc nie próbowałem poprawiać żadnych zbędnych podziałów wierszy, które mogą występować w oryginale.

Jeden przydatna wskazówka - podczas opracowywania Perla dodaj dodatkową kolumnę „moje obliczenie salda” i sprawdź, czy jest ona zawsze równa temu, co wyciąg bankowy podaje jako saldo.

** Korekta ** - belgijski ING Bank _nie_ dostarcza wyciągów w formacie csv; ale musiałem zadzwonić do infolinii ING Banku, aby dowiedzieć się, jak je zdobyć.
Nikolai Grigoriev
2016-09-14 06:09:06 UTC
view on stackexchange narkive permalink

Miałem podobne wyzwanie podczas analizowania wyciągów PDF z TD Waterhouse. Mają bardzo dziwną strukturę, która czasami zmienia się w ciągu roku iz powrotem. Skończyło się na napisaniu skryptu w Pythonie z dość złożoną logiką do ich przetwarzania. Użyłem biblioteki PDFMiner. Ale żeby było bezpiecznie, musiałem tam umieścić mnóstwo różnych kontroli bezpieczeństwa - chodziło o wydobycie danych, których użyłem do moich raportów podatkowych :)

Kolejną szaloną alternatywą, jaką mogłem sobie wyobrazić, jest OCR. Najprawdopodobniej żaden OCR nie przetrawi tych ładnie wyglądających stron, ale uważam, że większość sprawozdań finansowych ma stały układ. W ten sposób łatwo byłoby pociąć je na fragmenty (za pomocą czegoś takiego jak ImageMagick), a następnie OCR każdy fragment osobno. Choć brzmi to szalenie, myślę, że w przypadku niektórych dokumentów może to być dobra opcja.



To pytanie i odpowiedź zostało automatycznie przetłumaczone z języka angielskiego.Oryginalna treść jest dostępna na stackexchange, za co dziękujemy za licencję cc by-sa 3.0, w ramach której jest rozpowszechniana.
Loading...