36 puan yazan xguru 2025-03-13 | 3 yorum | WhatsApp'ta paylaş
  • Video scraping: Ekran kaydı videosunu Google Gemini modeline verip yapılandırılmış veriye dönüştürme
  • Görüntü modellerinin kullanımı: Gemini, GPT-4o, Claude 3.7 vb. kullanarak görsellerden ve yapılandırılmamış PDF'lerden veri çıkarma
  • Playwright gibi modern kütüphanelerden yararlanma: Tarayıcı otomasyonu gerçekleştirme. Video/görüntü analiz modelleriyle entegre şekilde kullanım
  • Simon Willison'ın veri gazeteciliği konferansı NICAR 2025'te gerçekleştirdiği 1 saatlik interaktif atölye çalışması

Atölye yapısı

1. Git scraping

  • Git scraper nedir?
    • GitHub Actions kullanarak web sitelerini veya kaynakları düzenli olarak scrape edip değişiklikleri kaydetmek mümkün
    • GitHub deposunda şablon repo kullanılarak çatallanıp kolayca yapılandırılabilir
    • Belirli bir web sitesi URL'si veya JSON dosyası URL'si girildiğinde her gün otomatik çalışır
  • Deponun commit sayfası URL'sine .atom eklenirse RSS akışı oluşturulabilir
    • RSS okuyucu üzerinden web sitesindeki değişiklikler gerçek zamanlı izlenebilir

2. Tarayıcı içinde JavaScript scraping

  • Karmaşık web sitelerinde yalnızca basit HTML parsing ile veri çıkarmak zordur
  • Gerçek tarayıcıda sayfa yüklendikten sonra JavaScript kullanarak scraping yapılabilir
  • Tablo verisi çıkarma: Tarayıcı geliştirici araçlarında JavaScript kullanarak tablo verisini JSON'a dönüştürmek mümkün
  • Sonsuz kaydırmalı sayfaları işleme: JavaScript ile sayfaya sürekli eklenen içerik otomatik olarak toplanabilir
  • Shot-scraper ile otomasyon:
    • Belirli komutlarla tüm web sayfasının ekran görüntüsü alınabilir
    • JavaScript kodu çalıştırıldıktan sonra veri JSON biçiminde çıktılanabilir

3. LLM ile yapılandırılmış veri çıkarma

  • LLM (Large Language Model) kullanarak yapılandırılmamış veriyi yapılandırılmış veriye dönüştürmek mümkün
  • OpenAI ve Google Gemini API anahtarları gerekir
  • Codespaces veya yerel Python ortamında çalıştırılabilir
  • Şema üzerinden veri çıkarma
    • Şema (schema), LLM'in döndüreceği verinin biçimini tanımlamak anlamına gelir
    • Örneğin başlık, URL, tarih gibi alanlar şemada tanımlanarak veriler tutarlı biçimde çıkarılabilir
    • Web sayfalarından veri scrape ederken şema tabanlı çıktı alınabilir
  • Maliyet hesaplama ve model seçimi
    • Her modelde giriş ve çıkış token sayısına göre maliyet oluşur
    • GPT-4o mini modeli ucuzdur ancak diğer modeller daha pahalı olabilir
    • Örneğin GPT-4.5 modeli aynı iş için çok daha yüksek maliyet çıkarabilir
    • Gemini modelleri görece ekonomiktir ve çeşitli seçenekler sunar
  • PDF'den veri çıkarma
    • FEMA Daily Operations Briefing gibi PDF belgelerinden veri çıkarılabilir
    • Gemini modeli PDF dosyasını girdi olarak alıp yapılandırılmış JSON biçiminde çıktı verebilir
    • PDF içinden belirli tablolar veya metinler çıkarılabilir
  • Görüntülerden veri çıkarma
    • GPT-4o görsellerden veri çıkarabilir
    • Ekran görüntüsü modele verilerek yapılandırılmış veri çıktısı alınabilir
  • Model seçimi ipuçları
    • Gemini 2.0 Pro modeli ücretsizdir ancak katı hız sınırlamaları vardır
    • Maliyet verimliliği ve performans göz önüne alınarak birden fazla model test edilip seçilmelidir
    • Web sayfasının özelliklerine göre LLM yerine shot-scraper daha yararlı olabilir
  • Karmaşık veri işleme zorlukları
    • Karmaşık infografikler veya haritalardan veri çıkarırken model performansı farklılık gösterebilir
    • En iyi sonucu veren modeli seçmek için çeşitli modeller denenmelidir

4. Google AI Studio ile video scraping

  • Video scraping, normal scraping'in zor olduğu web sitelerinden veri çıkarmak için güçlü bir yöntemdir
  • Google Gemini modeli video girdisini alıp JSON biçiminde yapılandırılmış veriye dönüştürebilir
  • Ekran kaydı yapıldıktan sonra bu video AI modeline verilerek veri çıkarılabilir
  • Video scraping süreci
    1. Web sitesinde istenen veriyi içeren bölüme gidin
    2. Ekran kaydı aracını (ör. QuickTime Player) çalıştırın
    3. Web sitesinde gezinin → önemli noktalarda kısa süre duraklayın
    4. Kaydedilen videoyu Google AI Studio'ya yükleyin
    5. AI Studio'da model prompt'unu yazın ve veriyi çıkarın
    6. Şema çıkarma aracını kullanarak veriyi JSON biçiminde yapılandırabilirsiniz
  • Video scraping'in avantajları
    • Karmaşık web sitesi yapılarını aşmayı sağlar
    • JavaScript render edilmesi gereken sitelerde faydalıdır
    • Sayfadaki çeşitli veriler (metin, tablo, görsel vb.) çıkarılabilir
  • Dikkat edilmesi gerekenler
    • AI Studio'da sunulan özelliklerin çoğu ücretsizdir ancak girilen veriler eğitim için kullanılabilir
    • Güvenlik açısından önemli verileri girmemek daha iyidir
    • Karmaşık web sitelerinde video scraping, diğer scraping tekniklerinden daha verimli olabilir
  • Gerçek zamanlı akış seçeneği
    • AI Studio'nun Stream Realtime seçeneği kullanılarak gerçek zamanlı veri çıkarılabilir
    • Scrape edilmesi zor dinamik içeriklerde de etkili olabilir
  • Haber odasında kullanım
    • Haber odalarında karmaşık veri çıkarma ve otomasyon için faydalıdır
    • En uygun yöntemi belirlemek için Gemini modelinin performansı ve doğruluğu test edilebilir
    • Atölye sonrasında da iş birliği ve geri bildirim mümkündür

Ek araçlar ve kaynaklar

  • git-scraper-template – Git scraping yapılandırma şablonu
  • shot-scraper-template – Web sayfası ekran görüntüsü otomasyon şablonu
  • shot-scraper har - HTML arşivi oluşturma. --zip ile sıkıştırılmış dosya da oluşturulabilir (JSON ve diğer asset'ler dahil)
  • git-history – Git commit kayıtlarını SQLite veritabanına dönüştürme

3 yorum

 
roxie 2025-03-16

Hmm.. GitHub Actions kullanmak GitHub politikalarının ihlali gibi görünüyor.

 
lighteach 2025-03-14

Android için de olsa keşke

 
wantutopia 2025-03-13

Makro engelleme aşma özelliği eklenirse.. pazarda kazananın o olacağını düşünüyorum.