IT
OmnvertGörsel • Belge • Ağ

PDF tablolarını Excel'e aktarma: ne çalışır, ne bozulur

5 dakika okuma
Küçük bir sonuç tablosu, sütun grafiği ve pasta grafiği açık bir dizüstü bilgisayar; yanında elde tutulan bir tablet.

PDF sayfası konumlandırılmış gliflerden oluşur; tablo yapısı dosyada değil, sizin gözünüzdedir. Çıkarma araçları bu yapıyı geometriden geri kurar ve nerede hata yapacakları bellidir.

PDF'in içinde tablo diye bir şey yoktur

Bir PDF sayfası, veri değil çizim talimatı taşır. İçerik akışında "şu yazı tipini seç, şu noktaya git, şu glifleri yaz, şuradan şuraya çizgi çek" komutları sıralanır. Satır, sütun ve hücre kavramı bu listede yoktur. Ekranda gördüğünüz tablo, hizalı biçimde konumlandırılmış metin parçaları ile bazen onların etrafına çizilmiş çizgilerden ibarettir.

Tek istisna etiketli PDF'lerdir. Belge üretici, mantıksal yapıyı ayrı bir ağaç olarak yazarsa sayfada gerçekten Table, TR ve TD elemanları bulunur ve çıkarma işlemi tahmine gerek kalmadan yapılır. Pratikte yazıcı sürücüsünden, eski raporlama motorlarından ve "PDF olarak kaydet" menüsünden çıkan dosyaların çoğu etiketsizdir. Yani çıkarma aracının yaptığı iş, kaybolmuş bir yapıyı geometriden geri kurmaktır.

Önce teşhis: elinizde ne var

Dosyayı açın ve tablonun bir satırını fareyle seçmeye çalışın. Bu tek hareket, izleyeceğiniz yolu belirler.

  • Metin seçilebiliyor ve tablo çizgili: en kolay durum, çizgiler ızgarayı verir.
  • Metin seçilebiliyor ama çizgi yok: sütunlar yalnızca boşluktan tahmin edilecek.
  • Metin hiç seçilmiyor: sayfa bir görüntüdür, önce OCR gerekir.
  • Seçim yapılıyor ama karakterler bozuk geliyor: yazı tipi gömülü, kodlama eşlemesi eksik; bu dosyalarda çıkarma sonucu da bozuk çıkar.

Çıkarma iki yoldan birini kullanır

1. Çizgilere bakan yöntem

Sayfadaki yatay ve dikey çizgiler ile ince dikdörtgenler toplanır, kesişim noktaları bulunur ve bunlardan bir hücre ızgarası kurulur. Ardından her metin parçası, merkezi hangi hücrenin içine düşüyorsa o hücreye atanır. Çizgili bir muhasebe raporunda bu yöntem neredeyse kusursuz çalışır. Camelot gibi kütüphanelerin lattice kipi tam olarak bunu yapar.

2. Boşluklara bakan yöntem

Çizgi yoksa geriye koordinatlar kalır. Metin çıkarıcı her glif için yatay başlangıç ve bitiş konumunu bilir. Araç, sayfanın tamamında hiçbir glifin denk gelmediği dikey beyaz koridorları arar ve bunları sütun sınırı kabul eder. Satırlar için de aynı mantık dikey eksende, y koordinatı toleransıyla uygulanır. Yöntem sezgisel olduğu için eşiklere duyarlıdır: koridor eşiğini biraz daraltınca iki sütun birleşir, biraz genişletince tek sütun ikiye bölünür.

Sağa yaslı sayı sütunları bu yöntemi özellikle zorlar. Kısa bir sayı ile uzun bir sayı aynı sütunda farklı x değerlerinden başlar; koridor testi kolonun sol tarafında delik görmez ama başlık solda hizalıysa başlık ile veri farklı sütunlara düşebilir.

Sonucu bozan altı tipik durum

BelirtiSebepNe yapmalı
Bir hücrenin içeriği alttaki satıra kaymışÇok satırlı hücre: aynı hücredeki ikinci satır ayrı bir kayıt sanılırSatır toleransını artırın ya da anahtar sütunu boş olan satırları üsttekiyle birleştirin
İlk sütun boş, veriler bir sağa kaymışBirleştirilmiş hücre: ızgara kurulurken tek geniş hücre birden çok sütuna yayılırBirleşimi elle doldurun; çoğu dışa aktarım birleşimi yalnızca ilk sütuna yazar
Başlık satırı tek harflik sütunlara dağılmışDöndürülmüş başlık: metin matrisi 90 derece çevrilmiş, glif kutuları dikeyBaşlığı çıkarma kapsamı dışında bırakın, sütun adlarını elle yazın
Aynı başlık verinin ortasında tekrar ediyorSayfa geçişi: her sayfada tablo başlığı yeniden basılırSayfa sayfa çıkarıp başlıkları atarak birleştirin
Sayılar Excel'de metin olarak duruyorBinlik ve ondalık ayracı ile hücre biçimi uyuşmuyor, arada sabit boşluk karakteri varAyraçları normalleştirin, sonra sütunu sayıya çevirin
Kelimeler bitişik ya da harf arası boşlukluYazı tipi aralığı boşluk karakteri yerine konumlandırma ile veriliyorKelime ayırma eşiğini değiştirin, gerekirse dosyayı yeniden üretin

Bu altı durumun beşi, kaynak belgenin görsel tercihlerinden doğar. Tablo ne kadar süslüyse geri kurulması o kadar zordur; sade, çizgili ve tek satırlık hücrelerden oluşan bir tablo neredeyse her araçta doğru çıkar.

Hedef biçim seçimi de sonucu etkiler

Aynı çıkarma işleminin sonucu CSV ile xlsx arasında farklı görünebilir. CSV yalnızca değerleri taşır: hücre biçimi, birleşim ve çok satırlı içerik kaybolur, satır içindeki satır sonu ise dosyayı bozabilecek bir kaçış sorunu yaratır. xlsx hücre tiplerini saklar, bu yüzden sayı ile metin ayrımını dosyanın kendisinde görebilirsiniz. Veriyi bir veri tabanına ya da koda aktaracaksanız CSV pratiktir; insan gözüyle kontrol edecekseniz xlsx ile başlamak daha az iş çıkarır.

Çok geniş tablolarda bir tuzak daha var: bazı raporlar sayfayı yatay bastırır ve sayfa nesnesine bir döndürme açısı yazar. Metin koordinatları döndürülmemiş sisteme göre kalır, yani araç sütunları yanlış eksende arayabilir. Çıktı tamamen anlamsız geldiğinde sayfayı düzeltip yeniden denemek çoğu zaman yeterlidir.

Taranmış sayfada durum farklı

Sayfa bir görüntüyse çıkarılacak glif yoktur. Önce karakterlerin tanınması, sonra tanınan kutuların satır ve sütuna yerleştirilmesi gerekir. Bu iki adım birbirini besler: eğik taranmış bir sayfada satırlar hafifçe yamuk olur ve sütun koridorları kapanır, sonuçta tanıma doğru olsa bile tablo yanlış bölünür. Taranmış belgeleri önce PDF OCR ile metin katmanı eklenmiş hale getirin, ayrıntılar için taranmış PDF'lerde OCR kalitesi yazısına bakın.

Sonucu doğrulamadan kullanmayın

Çıkarma sessizce yanlış sonuç üretebilen bir işlemdir: dosya açılır, tablo tablo görünür, ama iki satır birleşmiş ya da bir sütun kaymıştır. Beş dakikalık bir kontrol listesi bunu yakalar.

  1. Satır sayısı: PDF'teki satır sayısı ile sayfadaki kayıt sayısını karşılaştırın.
  2. Sütun sayısı: her satırda aynı sayıda dolu hücre var mı, filtreyle bakın.
  3. Toplamlar: belgede bir genel toplam varsa aynı toplamı Excel'de yeniden hesaplayın; tutmuyorsa kaçak satır ya da metne dönmüş sayı vardır.
  4. Tip kontrolü: sayı sütunlarını sağa yaslayın; sola yaslı kalanlar metindir.
  5. Uç satırlar: ilk ve son satır en sık bozulan yerlerdir, ikisini gözle karşılaştırın.

Önerilen akış

  1. Metin seçilebiliyor mu diye bakın; seçilmiyorsa OCR adımını önce yapın.
  2. Çok sayfalı raporda yalnızca ilgili sayfaları ayırın, gürültüyü baştan azaltın.
  3. Dosyayı PDF'ten Excel'e aracına verin ve çıktıyı yukarıdaki beş maddeyle kontrol edin.
  4. Tablo değil de akıcı metin çıkarmak istiyorsanız PDF'ten Word'e daha uygun sonuç verir.
  5. Yalnızca bir tabloyu göstermek yetiyorsa sayfayı görüntüye çevirmek en hızlı yoldur.

Son bir not: bu sitedeki PDF araçları dosyayı işlemek için sunucuya yükler. Mali tablo, bordro ya da sözleşme gibi hassas belgelerde paylaşmadan önce karartmanın nasıl doğru yapıldığını okuyun; siyah dikdörtgen çizmek veriyi silmez.

Sık sorulanlar

PDF'ten Excel'e aktarım neden bazen kusursuz, bazen berbat?

Kaynak belgeye bağlı. Tablo çizgiliyse araç hücre ızgarasını çizgilerden kurar ve sonuç genelde birebir olur. Çizgi yoksa sütunlar yalnızca boşluklardan tahmin edilir; birleştirilmiş hücre, çok satırlı hücre ve döndürülmüş başlık bu tahmini bozar.

Taranmış bir PDF'ten tablo çıkarabilir miyim?

Doğrudan çıkaramazsınız, çünkü sayfada metin yoktur. Önce OCR ile karakterlerin tanınması gerekir, ardından tanınan kutular satır ve sütuna yerleştirilir. Eğik veya düşük çözünürlüklü taramalarda ikinci adım ilkinden daha çok hata üretir.

Sayılar Excel'de metin olarak geliyor, neden?

Genelde ayraç uyuşmazlığı: belge 1.234,56 yazarken tablonuzun yerel ayarı nokta bekliyordur. Bir diğer sebep, sayının içindeki bölünemez boşluk veya para birimi karakteridir. Ayraçları normalleştirip sütunu sayıya çevirmek sorunu bitirir.

Çıktının doğru olduğunu nasıl anlarım?

Satır sayısını PDF ile karşılaştırın, her satırdaki dolu hücre sayısının sabit olduğunu kontrol edin ve belgedeki genel toplamı Excel'de yeniden hesaplayın. Toplam tutmuyorsa ya bir satır kaybolmuştur ya da bir sayı metin olarak durmaktadır.

Etiketli PDF farkı nedir?

Etiketli PDF'te üretici, tablo yapısını ayrı bir mantıksal ağaçta saklar. Bu dosyalarda çıkarma tahmin değil okuma işlemidir ve hücre sınırları doğru gelir. Erişilebilirlik için hazırlanan resmi belgeler sıklıkla etiketlidir, yazıcı çıktısından üretilenler değildir.

Yazıda kullanılan araçlar

Kaynaklar

YöntemGörsel kaynakları