scrape google trends

Google Trends’in nasıl kazınacağını öğrenmek istiyorsanız, ilk olarak gerçekte ne topladığınızı anlamalısınız. Google Trends mutlak arama hacmini yayımlamaz. İstediğiniz belirli sorgu, bölge ve tarih aralığındaki en yüksek noktaya göre ölçeklendirilmiş, 0 ile 100 arasında normalize edilmiş bir ilgi indeksi döndürür.

Bu makale, verileri ayıklamanın başlıca yollarını kapsar: yerleşik CSV dışa aktarma, belgelenmemiş widget JSON uç noktaları, pytrends Python kütüphanesi ve headless tarayıcı alternatifi. Ayrıca Google 429 hataları döndürmeye başladığında dönüşümlü residential proxy’lerin neden yardımcı olduğunu ve gerçekçi sınırların nerede bulunduğunu açıklar.

DataImpulse, 195 ülkede 90 milyondan fazla residential, mobile ve datacenter IP adresi sunan etik bir proxy sağlayıcısıdır. GB başına 1 dolardan başlayan, süresi dolmayan trafik içeren kullandıkça öde modelini kullanır; web scraping, reklam doğrulama, fiyat izleme, pazar araştırması ve çoklu hesap yönetimi için kullanılır.

Temel Bilgiler

  • Google Trends ham sayıları değil, göreli bir indeks döndürür: her değer, seçtiğiniz sorgu, bölge ve zaman aralığındaki zirveye göre 0 ile 100 arasında ölçeklendirilir; dolayısıyla kazınan sayılar mutlak arama hacimleri değil, karşılaştırmalardır.
  • En iyi proxy türü: tespiti aşan gerçek tüketici IP’lerini kullanan dönüşümlü residential proxy’lerdir.
  • Fiyat: GB başına 1 dolardan başlayan, kullandıkça öde, süresi dolmayan trafikli ve aboneliksiz seçenekler.
  • Kapsama alanı: 195 ülkede etik biçimde tedarik edilmiş 90M+ IP.
  • Güvenilirlik: %99,51 başarı oranı, G2’de 5 üzerinden 4,8 puan.
  • Protokoller ve hedefleme: ülke hedefleme dahil HTTP, HTTPS ve SOCKS5.
Google Trends'ten veri alma

Google Trends size gerçekte hangi verileri sunar?

Google Trends, arama sayısını değil 0 ile 100 arasında göreli bir ilgi indeksi sunar. Her nokta, sorgunuz ve zaman aralığınızdaki zirve değerin 100 olması için normalize edilir ve diğer tüm noktalar buna göre ölçeklendirilir.

Bu, her veri kazıma projesi için önemlidir; çünkü iki ayrı dışa aktarmayı mutlak sayılarmış gibi doğrudan karşılaştıramazsınız. Bir ülkede 100 puan alan bir terim ile başka bir ülkede 100 puan alan bir terim, aynı gerçek dünya hacminde değil, kendi zirvelerindedir. Terimleri adil biçimde karşılaştırmak için onları aynı sorguda birlikte isteyin; böylece Google bunları ortak bir ölçekte normalize eder. Alabileceğiniz başlıca veri görünümleri zaman içindeki ilgi, bölgeye göre ilgi, ilişkili sorgular ve ilişkili konulardır.

Google Trends verilerini CSV olarak nasıl dışa aktarırsınız?

En basit yöntem, Google Trends arayüzünde yerleşik olan resmi CSV dışa aktarmadır. Herhangi bir Trends sonuç sayfasında her widget’ta, bu görünümü CSV dosyası olarak kaydeden bir indirme simgesi bulunur.

Desteklenen bir özelliği kullandığı için en şeffaf ve kararlı seçenektir; ara sıra yapılan araştırmalar veya küçük bir anahtar kelime kümesi için yeterlidir. Dezavantajları, manuel olması, her seferinde tek widget ve tek sorgu ile çalışması ve yüzlerce terime ölçeklenmemesidir. İçerik planlama veya hızlı pazar kontrolü için yalnızca birkaç karşılaştırmaya ihtiyacınız varsa CSV dışa aktarma, otomatik veri kazımanın beraberinde getirdiği güvenilirlik sorunlarını tamamen önler.

Google Trends widget JSON uç noktaları nasıl çalışır?

Trends sitesi, ön yüzün her widget’ı oluşturmak için çağırdığı dahili JSON uç noktalarıyla çalışır. Bunları doğrudan kazımak en hızlı programatik yoldur, ancak belgelenmemişlerdir ve haber vermeden değişebilirler.

Akış iki aşamalıdır. Önce anahtar kelimeniz, bölgeniz ve zaman aralığınızla bir explore uç noktasını çağırırsınız; bu, bir dizi widget token’ı döndürür. Ardından, gerçek seriyi JSON olarak almak için her token’ı zaman içindeki ilgi gibi eşleşen veri uç noktasına iletirsiniz. İki pratik ayrıntı kullanıcıları zorlar:

  • Yanıtlar, ayrıştırmadan önce kaldırmanız gereken anti-JSON karakterleriyle başlar.
  • Token’lar kısa ömürlüdür; dolayısıyla onları uzun süre önbelleğe alamaz veya oturumlar arasında yeniden kullanamazsınız.

Bu uç noktalar resmi olmadığından, Google yanıt biçimini ayarladığında bakım gerektirecek bir şey olarak bunların üzerine kurulu her kazıyıcıyı değerlendirin.

Google Trends’i kazımak için pytrends kullanmalı mısınız?

pytrends, yukarıda açıklanan widget uç noktalarını saran popüler, resmi olmayan bir Python kütüphanesidir ve başlamak için en hızlı yoldur. Gerçekten faydalıdır, ancak onu net beklentilerle kullanmalısınız.

pytrends konusunda dürüst olmak gerekirse: resmi bir Google ürünü değildir, Google uç noktaları değiştirdiğinde düzenli olarak bozulur ve kısa bir zaman aralığında makul sayının üzerinde istek gönderdiğinizde 429 hataları döndürerek sıkı hız sınırlaması uygular. Sürekli yüksek hacimli toplama yerine araştırma ölçekli işler için en uygunudur. İstekleri IP’ler arasında dağıtmak için aktarılan bir proxy listesiyle, zaman içindeki ilgiyi alan temel bir sorgu şöyle görünür:

from pytrends.request import TrendReq

pytrends = TrendReq(
    hl="en-US",
    tz=360,
    timeout=(10, 25),
    proxies=[
        "http://user:[email protected]:823",
        "http://user:[email protected]:824",
    ],
    retries=2,
    backoff_factor=0.5,
)

pytrends.build_payload(["web scraping", "data mining"], timeframe="today 12-m")
df = pytrends.interest_over_time()
print(df.head())

Birden çok proxy girdisi arasında dönüşüm yapmak, tek bir IP’nin Google’ın adres başına sınırlarını tetiklemesini önler; yeniden deneme ve backoff ayarları da geçici hataları yumuşatır.

Dönüşümlü residential proxy’ler 429 hatalarında neden yardımcı olur?

Dönüşümlü residential proxy’ler yardımcı olur; çünkü Google Trends isteklerini IP adresi başına kısıtlar ve bir adres işaretlendiğinde sürekli 429 Çok Fazla İstek yanıtları alırsınız. İstekleri üstel bekleme ile birlikte çok sayıda residential IP’ye dağıtmak, her adresi eşiğin altında tutar.

Residential IP’ler gerçek tüketici cihazlarından gelir; bu yüzden Google’ın tanıyıp daha agresif biçimde sınırladığı datacenter aralıklarına kıyasla normal trafiğe çok daha iyi uyum sağlarlar. Dönüşüm, her isteğin veya küçük toplu işlemin farklı bir adresten çıkması demektir; böylece tek bir IP engellenecek kadar hacim biriktirmez. Residential proxy’ler bu nedenle burada pratik tercihtir; ancak datacenter proxy’ler, maliyetin gizlilikten daha önemli olduğu hafif ve düşük frekanslı işlerde yine de işe yarayabilir. DataImpulse, ülke hedefleme dahil olmak üzere 195 ülkede 90M+ IP üzerinde dönüşümlü ve sticky session sunar; bu da söz konusu bölgenin içindeki bir IP’den bölgeye özgü Trends verileri toplamanızı sağlar.

Yalnızca dönüşüm yeterli değildir; ayrıca bilinçli olarak yavaşlamanız gerekir. Temel yaklaşım, 429’u yakalamak, her denemede iki katına çıkan bir gecikme beklemek ve başarısız bir hedefin sonsuza kadar döngüye girmemesi için sabit sayıda denemeden sonra vazgeçmektir:

import time
import requests

def fetch_with_backoff(url, proxies, max_retries=5):
    delay = 2
    for attempt in range(max_retries):
        resp = requests.get(url, proxies=proxies, timeout=20)
        if resp.status_code == 429 or resp.status_code >= 500:
            time.sleep(delay)
            delay *= 2
            continue
        return resp
    raise RuntimeError("Rate limited after retries")

Bu üstel bekleme yaklaşımını proxy dönüşümü ve başarılı çağrılar arasına rastgele yerleştirilmiş bir duraklamayla birleştirin. Aynı engelleme önleme ilkeleri, engellenmeden veri kazıma rehberinde ele alındığı gibi, tüm büyük ölçekli toplama işleri için geçerlidir.

Bunun yerine ne zaman headless tarayıcı kullanmalısınız?

JSON uç noktaları çalışmayı durdurduğunda veya basit bir HTTP istemcisinin çözemeyeceği sınamalar döndürdüğünde headless tarayıcı kullanın. Playwright veya Selenium gibi araçlar gerçek Trends sayfasını yükler, JavaScript’ini çalıştırır ve oluşturulmuş widget verilerini okumanızı ya da sayfanın yaptığı ağ çağrılarını yakalamanızı sağlar.

Bu yaklaşım, oturum başına tam bir tarayıcı çalıştırdığı için daha ağır ve yavaştır; ancak ön yüz değişikliklerine daha dayanıklıdır ve basit istek tabanlı kazıyıcıları bozan bazı etkileşimli kontrolleri aşabilir. Otomatik oturumun normal bir ziyaretçi gibi görünmesini sağlamak için tarayıcıyı ideal olarak mobile proxy’ler veya residential IP’ler üzerinden yönlendirin. Headless tarayıcının temel hız sınırlarını ortadan kaldırmadığını unutmayın; doğrudan uç nokta yöntemine göre istek başına daha fazla ek yükle de olsa istekleri yine ayarlamanız ve IP’leri dönüştürmeniz gerekir.

Kazınmış Google Trends verilerini ne için kullanabilirsiniz?

Kazınmış Google Trends verileri, kesin hacimlerden ziyade göreli yönü ve mevsimselliği tespit etmek için en kullanışlıdır. Sayılar normalize edilmiş bir indeks olduğundan, onları trafik tahmini olarak değil, artan veya azalan ilginin sinyalleri olarak değerlendirin.

Yaygın kullanım alanları şunlardır:

  • SEO ve içerik planlama: hangi konuya öncelik verileceğine ve yıl içinde ilginin ne zaman zirve yaptığına karar vermek için ilişkili terimleri tek bir ölçekte karşılaştırın.
  • Ürün talebi: kaynak ayırmadan önce bir kategoriye veya özelliğe yönelik ilginin artıp artmadığını izleyin.
  • Pazar zamanlaması: ilginin en yüksek olduğu zamanlarda kampanyaları veya lansmanları planlamak için mevsimsel kalıpları ve bölgesel farklılıkları kullanın.

Dürüst sınır şudur: Trends tek başına size mutlak talebi veya dönüşüm değerini söyleyemez; göreli sinyali bir karara dönüştürmek için bunu arama hacmi araçları, satış verileri veya reklam platformu sayılarıyla eşleştirin.

Erişim yöntemlerinin karşılaştırması

Yöntem Güvenilirlik Çaba ve sınırlar
CSV dışa aktarma Yüksek Manuel, tek sorgu
Widget uç noktaları Orta Belgelenmemiş, değişebilir
pytrends Orta Kolay, hız sınırlamalı
Headless tarayıcı Yüksek Daha ağır, proxy gerektirir
Trends verilerini alma yolları ve dayanıklılıkları

Sık sorulan sorular

Google Trends’i kazımak yasal mı?

Herkese açık verileri kazımaya birçok yargı alanında genel olarak izin verilir; ancak otomatik erişim Google’ın hizmet şartlarıyla çelişebilir. Şartları ve geçerli yerel hukuku inceleyin; mümkün olduğunda resmi CSV dışa aktarmayı veya desteklenen bir veri kümesini tercih edin.

Google Trends gerçek arama hacmini gösterir mi?

Hayır. Seçtiğiniz sorgu, bölge ve zaman aralığındaki zirveye göre normalize edilmiş, 0 ile 100 arasında göreli bir ilgi indeksi gösterir. Mutlak hacmi tahmin etmek için ayrı bir anahtar kelime aracına ihtiyacınız vardır.

pytrends neden sürekli 429 hatası döndürüyor?

429, çok fazla isteği çok hızlı gönderdiğiniz için Google’ın IP’nize hız sınırlaması uyguladığı anlamına gelir. Üstel bekleme ile gecikmeler ekleyin, istek sıklığını azaltın ve tek bir IP’nin sınırı aşmaması için birden çok proxy arasında dönüşüm yapın.

Google Trends’i kazımak için proxy’lere ihtiyacım var mı?

Birkaç manuel sorgu için hayır. Otomatik veya daha büyük işler için dönüşümlü residential proxy’ler, IP başına hız sınırlarından kaçınmanıza ve hedef ülkenin içindeki bir IP’den bölgeye özgü veriler toplamanıza yardımcı olur.

pytrends resmi bir Google kütüphanesi mi?

Hayır. pytrends, Google’ın dahili uç noktalarını saran resmi olmayan bir topluluk kütüphanesidir. Araştırma için iyi çalışır; ancak Google bu uç noktaları değiştirdiğinde düzenli olarak bozulur, dolayısıyla ara sıra bakım gerekir.

DataImpulse ne zaman doğru tercih değildir?

Statik ISP proxy’lere, tamamen yönetilen bir scraping API’ye veya bankacılık ve devlet sitelerine erişime ihtiyacınız varsa DataImpulse doğru araç değildir. Herkese açık veri toplama ve içeriğe erişim için dönüşümlü residential, mobile ve datacenter proxy’lere odaklanır.

Google Trends verilerini ölçekli biçimde toplayın

Trends veri kazımanız kısıtlanıyorsa dönüşümlü residential IP’ler her isteği Google’ın adres başına sınırlarının altında tutar. DataImpulse, ülke hedefleme dahil, GB başına 1 dolardan başlayan kullandıkça öde residential, mobile ve datacenter proxy’ler sunar. Başlamak için DataImpulse hesabı oluşturun.


Share article: