Açık kaldığında “neyin değiştiğini” bildiren web toplayıcı web_harvester (Chrome uzantısı + Python CLI)
(chromewebstore.google.com)Birkaç kez crawler geliştirirken hep takıldığım bir nokta vardı. Çoğu tek seferlik kazıyıp bitiriyordu; asıl merak ettiğim “düne göre ne değişti?” (fiyat düşüşü, yeni ürün, sıralama değişimi, yorum değişimi) sorusu için her seferinde siteye tekrar girip kendim karşılaştırmam gerekiyordu.
web_harvester, açık bıraktığınızda sürekli çalışıp bu “değişiklikleri” bildirmeye odaklanıyor. Aynı öğeleri tarihe göre Google Sheets/CSV/Excel/SQL’e biriktirdiği için tek bir satır değil, trend kalıyor. Anlamlı bir değişiklik olduğunda da Slack/Discord webhook’u veya e-posta ile hemen geliyor. Toplama aralığını kendiniz ayarlıyorsunuz; varsayılan düşük frekansta.
No-code tarafına da özen gösterdim. Alan otomatik keşfi, sayfadaki değer adaylarını (ad, fiyat vb.) bulup gösteriyor; yalnızca işaretlediğinizde eşleniyor, yani kodlama 0.
Teknik olarak en keyifli kısmı recon motoruydu. Bu sitede JSON-LD var mı, her şey NEXT_DATA içinde mi, yoksa sonunda DOM’u mu kazımak gerekiyor — her seferinde geliştirici araçlarını açıp elle kontrol etmekten sıkıldığım için bu kararı koda taşımayı denedim. Tek bir örnek sayfa alıp 5 modda (JSON-LD · window değişkenleri (NEXT_DATA vb.) · DOM tekrarları · Google af-data/af-one) otomatik teşhis yapıyor ve en ucuz, UI değişiklikleriyle daha az kırılan çıkarım yolunu seçiyor. SSR kullanan veya JSON’u belgeye gömülü gelen sitelerde server-side olarak hafif çalışıyor; dinamik/giriş gerektiren sayfalarda ise kendi Chrome oturumunuzu (gerçek tarayıcı) kullanarak aynı çıkarım kodunu çalıştırıyor. Çıkarım çekirdeğini (alan eşleme, tip dönüştürme, öğe çıkarımı) offline birim testleriyle sabitlediğim için refactor yapmak daha az ürkütücü.
Tasarım ilkelerini baştan net belirledim: açık veri · kendi yetkiniz/oturumunuz · düşük frekans · robots’a saygı. Captcha/proxy atlatma yapmıyor.
Biçim olarak Chrome MV3 uzantısı + Python CLI hibriti. Tek başıma geliştirip işletiyorum; hâlâ pürüzlü yerleri olabilir. Deneyip “recon teşhis sonucunda şu da olsa iyi olur” ya da “şu tür değişiklik bildirimi de gelse iyi olur” gibi geri bildirimler verirseniz gerçekten minnettar olurum.
Ücretsiz kurulumla (Chrome Web Store) hemen deneyin — hasat, alan keşfi ve CSV/Sheets dışa aktarma ücretsiz (Basic): https://chromewebstore.google.com/detail/…
Gözetimsiz zamanlama ve değişiklik bildirimleri Pro’da (tek seferlik ödeme, lansmana özel %20 otomatik uygulanır): https://joktnova.gumroad.com/l/figvr/LAUNCH20
Açık veri · kendi yetkiniz · düşük frekans · robots’a saygı · captcha/proxy atlatma yok.
Henüz yorum yok.