Modern, Hızlı ve Güçlü Web Kazıma Aracı
Siber Vatan Programı Yıldız CTI Ekibi görevi kapsamında geliştirilmiştir.
Özellikler • Kurulum • Kullanım • Yapı • İletişim
galileoff-WebScraper, Go ekosisteminin gücünü kullanarak modern web sitelerini analiz etmek için tasarlanmış profesyonel bir araçtır. Standart HTTP isteklerinin yetersiz kaldığı durumlarda, Chromedp altyapısı sayesinde gerçek bir tarayıcı (headless) gibi davranarak JavaScript ile render edilen dinamik içerikleri sorunsuz bir şekilde yakalar.
Araç, sadece veri çekmekle kalmaz; hedef sitenin o anki görüntüsünü yüksek çözünürlükte kaydeder ve site üzerindeki tüm ağ haritasını (link yapısını) çıkarır.
| Özellik | Açıklama |
|---|---|
| 🔍 Headless Scraping | JS tabanlı siteleri (SPA, React, Vue vb.) eksiksiz tarama yeteneği. |
| 📸 Akıllı Screenshot | Sayfanın tam boyutlu ekran görüntüsünü otomatik olarak yakalar ve PNG olarak kaydeder. |
| 🌐 Link Extractor | Sayfa içindeki tüm iç ve dış bağlantıları ayrıştırır ve listeler. |
| 💾 HTML Dump | Sayfanın son render edilmiş DOM yapısını HTML dosyası olarak saklar. |
| 🛡️ Güvenli Mod | Graceful Shutdown özelliği ile işlemler yarıda kesilse bile verileri korur. |
| 🎨 Cyberpunk CLI | Mizahi, ASCII sanatlı, modern ve kullanıcı dostu terminal arayüzü. |
- Go: v1.23 veya üzeri
- Tarayıcı: Google Chrome, Chromium veya MS Edge yüklü olmalıdır.
git clone https://github.com/galile0ff/galileoff-WebScraper.gitcd galileoff-WebScrapergo mod tidyProjeyi başlatmak için:
go run main.goProgram interaktif bir menüye sahiptir:
- Başlangıç: Hedef URL'yi girin (örn:
galileoff.com) FTuşu: Yeni bir tarama başlatır.SPACETuşu: Programdan güvenli çıkış yapar.
Her tarama için domain_adi_com formatında otomatik bir klasör oluşturulur:
galileoff_com/
├── app.log # Detaylı işlem kayıtları
├── output.html # Sayfanın kaynak kodları
├── screenshot.png # Sitenin ekran görüntüsü
└── links.txt # Bulunan tüm bağlantılar
.
├── 📂 pkg/ # Ana kütüphane dosyaları
│ ├── 📂 cli/ # CLI arayüz ve ASCII tasarımları
│ │ ├── ascii.go # ASCII sanat ve renk fonksiyonları
│ │ └── flags.go # CLI argüman yönetimi
│ ├── logger.go # Loglama mekanizması
│ ├── scraper.go # Web scraping motoru (Chromedp)
│ └── utils.go # Yardımcı dosya işlemleri
├── .gitignore # Git ayarları
├── main.go # Uygulama ana giriş noktası
├── go.mod # Go modül tanımları
├── go.sum # Bağımlılık sağlama
├── LICENSE # Lisans dosyası
└── README.md # Proje dokümantasyonuBu proje açık kaynaklıdır ve geliştirilmesi zaman almaktadır. Eğer işinize yaradıysa ve destek olmak isterseniz:
Açık kaynağa katkılarınızı bekliyoruz!
- Bu repoyu fork'layın.
- Yeni bir özellik dalı (branch) oluşturun (
git checkout -b ozellik/mükemmelozellik). - Değişikliklerinizi yapın ve commit'leyin (
git commit -m 'Mükemmel ozellik eklendi'). - Dalınızı push'layın (
git push origin ozellik/mükemmelozellik). - Bir Pull Request (PR) oluşturun.
Bu yazılım MIT Lisansı ile lisanslanmıştır. Daha fazla bilgi için LICENSE dosyasına göz atabilirsiniz.
