Python ile Toplu Meta Description Kontrolü

0 Réponses 1 Vues
·
Participants
Auteur de la discussion #1
Giriş ve Amaç
Günümüzde SEO optimizasyonunun temel taşlarından biri, web sayfalarının meta description etiketlerinin doğru ve özgün olmasıdır. Birden fazla sayfayı manuel kontrol etmek zaman alıcı ve hataya açık olabiliyor. Bu noktada Python'un sunduğu otomasyon imkanları devreye giriyor. Bu yazıda, Python kullanarak bir liste veya CSV dosyası içindeki web sayfalarının meta description'larını toplu şekilde kontrol etmeyi, boş veya eksik olanları tespit etmeyi ve sonuçları raporlamayı ele alacağız.

Çalışma Prensibi ve Adımlar
İlk adım olarak, Python'un requests ve BeautifulSoup kütüphaneleri ile web sayfalarını çekip analiz edeceğiz. Bu kütüphaneler, sayfa içeriğini almak ve HTML içinden meta description etiketini çıkarmak için idealdir.

İkinci aşamada, hedef URL listesini bir liste veya CSV dosyasından okuyacağız. Her URL için şu işlemleri yapacağız:
  • Sayfayı HTTP GET isteği ile indirecek
  • Sayfa içeriğinden <meta name="description" ...> etiketini arayacak
  • Eğer meta description varsa, içeriği alıp uzunluğunu kontrol edecek
  • Yoksa veya boş ise, bu durumu raporlayacak

    Üçüncü adımda ise, tüm sonuçları bir rapor halinde çıktı veya CSV dosyasına kaydedeceğiz. Bu rapor, özellikle SEO açısından kritik olan eksik veya hatalı meta description'ları kolayca tespit etmeye imkan sağlar.

    Örnek Kod Parçası ve Uyarılar
    Aşağıda temel bir örnek kod yer almakta:

    CODE
    1234567891011121314151617181920212223242526272829303132333435python
    import requests
    from bs4 import BeautifulSoup
    import csv
    
    urls = ['https://ornek1.com', 'https://ornek2.com']
    
    sonuclar = []
    
    for url in urls:
        try:
            response = requests.get(url, timeout=10)
            response.raise_for_status()
            soup = BeautifulSoup(response.text, 'html.parser')
            meta_desc = soup.find('meta', attrs={'name':'description'})
            if meta_desc and meta_desc.get('content'):
                desc = meta_desc['content'].strip()
                uzunluk = len(desc)
                if uzunluk == 0:
                    durum = 'Boş'
                else:
                    durum = f'Dolu ({uzunluk} karakter)'
            else:
                desc = 'Meta description yok'
                durum = 'Eksik'
        except Exception as e:
            desc = f'Hata: {str(e)}'
            durum = 'Hata'
        sonuclar.append({'url': url, 'description': desc, 'durum': durum})
    
    [b]Sonuçları CSV'ye kaydetme[/b]
    with open('meta_description_raporu.csv', 'w', newline='', encoding='utf-8') as f:
        writer = csv.DictWriter(f, fieldnames=['url', 'description', 'durum'])
        writer.writeheader()
        writer.writerows(sonuclar)
    


    Sonuç ve Uygulama Alanları
    Bu yöntem, büyük ölçekli web siteleri veya portföylerde meta description durumu hakkında hızlı ve doğru bilgi sağlar. Ayrıca, SEO denetim araçlarının temel aşamalarını otomatik hale getirerek zaman tasarrufu sağlar. Bu temelde, farklı URL listeleri veya dinamik içeriklere uyarlayarak, sürekli güncel meta bilgisi kontrolü yapmak da mümkündür.

    Meta description'ların optimizasyonunun SEO başarısındaki önemi göz önüne alındığında, otomasyon ile düzenli kontroller yapmak, web sitesi performansını ve arama motoru görünürlüğünü artıracaktır.
  • Vous devez être connecté pour répondre.

    Utilisateurs qui consultent cette discussion (Total: 5, Membres: 5, Invités: 0)
    Total: 5 (membres: 5, invités: 0)
    0 citations sélectionnées