Sitemap Coverage Kontrolü İçin Özel Script

0 Yanıt 34 Görüntülenme
Puanlayanlar
Katılımcılar
Konuyu Açan #1
Genel Bakış şöyle dedi:
Sitemap'in sitenizdeki tüm sayfaları doğru şekilde kapsayıp kapsamadığını düzenli olarak kontrol etmek, SEO başarısı için kritik öneme sahiptir. Bu noktada, manuel kontrol zaman alıcı ve hata yapma riskini artırıcıdır. Bu nedenle, otomatik bir script geliştirmek, süreçleri hızlandırıp doğruluğu artırabilir.


Geliştirilecek script temel olarak şu adımları içermelidir:

[list]
  • Site haritasını (sitemap.xml) ve sitenizdeki canlı sayfaları tarayabilmek.
  • Sitemap'da listelenen URL'leri ve sitenin genel URL yapısını karşılaştırmak.
  • Eksik veya erişilemeyen URL'leri raporlamak.
  • Güncel olmayan veya 404 hatası veren sayfaları tespit etmek.
  • Aynı zamanda, sitemap'da olup da sitenizde bulunmayan veya silinen sayfaları belirlemek.

    Bu işlemi gerçekleştirmek için Python ve Requests, BeautifulSoup gibi kütüphaneler oldukça uygun. İşte temel mantık:

    • Öncelikle, sitemap.xml dosyasını parse edip tüm URL'leri al.
    • Daha sonra, sitenin ana URL yapısını kullanarak, belirli periyotlarda siteyi tarayarak aktif sayfaları listel.
    • Son olarak, ikili karşılaştırma yaparak eksik veya fazla sayfaları raporla.


    Bunun yanında, hata yönetimi ve güvenlik açısından şu noktalar önemli:

    • Sunucu yanıt süreleri ve hatalarda zaman aşımı ayarları.
    • Gereksiz trafik oluşturmamak için uygun zaman aralıkları.
    • Otomasyonun düzenli çalışması için cron ya da benzeri zamanlayıcılar kullanmak.


    Aşağıda temel bir örnek kod parçası yer almakta:

    KOD
    12345678910111213141516171819202122python  
    import requests  
    from bs4 import BeautifulSoup  
    
    sitemap_url = 'https://ornek.com/sitemap.xml'  
    response = requests.get(sitemap_url)  
    soup = BeautifulSoup(response.content, 'xml')  
    urls = [loc.text for loc in soup.find_all('loc')]  
    
    aktif_url_listesi = []  
    for url in urls:  
        try:  
            resp = requests.get(url, timeout=5)  
            if resp.status_code == 200:  
                aktif_url_listesi.append(url)  
            else:  
                print(f"Hata: {url} - Durum kodu: {resp.status_code}")  
        except requests.RequestException as e:  
            print(f"İstek hatası: {url} - {e}")  
    
    [b]Eksik veya erişilemeyen URL'leri raporla veya logla.[/b]
    print('Aktif URL sayısı:', len(aktif_url_listesi))  
    


    Bu temel script, temel ihtiyaçları karşılar ancak gerçek kullanımda, sitenizin yapısına ve boyutuna göre optimize edilmesi gerekebilir. Ayrıca, raporlama ve otomasyon süreçlerini de entegre etmek faydalı olur.

    Sizler de sitemap coverage kontrolü için bu tarz otomatik araçlar veya scriptler geliştirdiniz mi? Hangi yöntemler sizin için daha verimli oluyor?
  • Yanıt vermek için giriş yapmış olmalısınız.

    0 alıntı seçildi