- 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
- Web sitesinde istenen veriyi içeren bölüme gidin
- Ekran kaydı aracını (ör. QuickTime Player) çalıştırın
- Web sitesinde gezinin → önemli noktalarda kısa süre duraklayın
- Kaydedilen videoyu Google AI Studio'ya yükleyin
- AI Studio'da model prompt'unu yazın ve veriyi çıkarın
- Ş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
3 yorum
Hmm.. GitHub Actions kullanmak GitHub politikalarının ihlali gibi görünüyor.
Android için de olsa keşke
Makro engelleme aşma özelliği eklenirse.. pazarda kazananın o olacağını düşünüyorum.