Giriş
Dijital dünyada stratejik kararlar almak, anlık verileri doğru okumaktan ve trendleri önceden sezmekten geçer. Manuel olarak veri toplamak ve analiz etmek hem zaman alıcıdır hem de insan hatasına açıktır. Python; zengin kütüphane ekosistemi, esnek yapısı ve otomasyon yetenekleriyle veri analistleri ve dijital stratejistler için vazgeçilmez bir araçtır. Bu rehberde, Python kullanarak temel düzeyde veri çekme, trend takibi yapma ve bu verileri anlamlı içgörülere dönüştürme adımlarını inceleyeceğiz.
Ortam Hazırlığı ve Temel Kütüphaneler
Python ile veri analizi ve trend takibi yapabilmek için öncelikle doğru kütüphaneleri kurmanız gerekir. Projenizin kapsamına göre veri manipülasyonu, görselleştirme ve web kazıma (web scraping) araçlarına ihtiyacınız olacaktır.
Gerekli Kütüphaneler
- Pandas: Veri analizi ve manipülasyonu için endüstri standardıdır. Tablo tabanlı verileri yönetmenizi sağlar.
- Requests & BeautifulSoup: Web sitelerinden statik veri çekmek (web scraping) için kullanılır.
- Pytrends: Google Trends verilerine doğrudan Python üzerinden erişmenizi sağlayan resmi olmayan ancak oldukça popüler bir kütüphanedir.
- Matplotlib & Seaborn: Elde ettiğiniz trendleri ve verileri görselleştirmek için kullanılır.
Bu kütüphaneleri terminal veya komut satırı üzerinden kolayca yükleyebilirsiniz:
pip install pandas requests beautifulsoup4 pytrends matplotlib seaborn
Google Trends ile Arama Trendlerini Takip Etmek
Dijital stratejistlerin en sık kullandığı araçlardan biri Google Trends'tir. Belirli kelimelerin popülaritesini zaman içinde izlemek, tüketici ilgi alanlarını anlamak adına kritiktir. pytrends kütüphanesi ile bu süreci otomatik hale getirebilirsiniz.
Aşağıdaki örnekte, belirli anahtar kelimelerin arama hacmindeki değişimleri nasıl çekebileceğinizi görebilirsiniz (Not: Bu kodun çalışması için aktif internet bağlantısı ve güncel bir pytrends sürümü gereklidir):
from pytrends.request import TrendReq
import pandas as pd
Google Trends bağlantısını başlatalım (Türkçe ve Türkiye lokasyonu için)
pytrends = TrendReq(hl='tr-TR', tz=360)
Takip etmek istediğimiz anahtar kelimeleri belirleyelim
keywords = ["veri analizi", "yapay zeka", "dijital pazarlama"]
Payload oluşturma (Son 3 ay ve Türkiye geneli)
pytrends.build_payload(keywords, cat=0, timeframe='today 3-m', geo='TR', gprop='')
İlgi düzeyini zaman serisi olarak alalım
data = pytrends.interest_over_time()
'isPartial' sütununu veri setinden çıkaralım
if 'isPartial' in data.columns:
data = data.drop(columns=['isPartial'])
print(data.head())
Web Sitelerinden Veri Kazıma (Web Scraping) ile Anlık Takip
Her veri API veya hazır araçlar üzerinden sunulmaz. Sektörel haber sitelerinden, e-ticaret platformlarından veya bloglardan anlık veri toplamak için BeautifulSoup kullanabilirsiniz. Örneğin, bir haber sitesindeki belirli etiketlerin geçiş sıklığını takip etmek isteyebilirsiniz.
Varsayımsal bir senaryo üzerinden, bir web sayfasındaki başlıkları çekmek için şu temel yapıyı kullanabilirsiniz:
import requests
from bs4 import BeautifulSoup
Hedef URL (örnek amaçlıdır)
url = "https://ornek-haber-sitesi.com/teknoloji"
response = requests.get(url)
if response.status_code == 200:
soup = BeautifulSoup(response.text, 'html.parser')
# Sayfadaki tüm h2 başlıklarını bulalım
titles = soup.find_all('h2')
for title in titles:
print(title.text.strip())
else:
print("Sayfaya erişilemedi.")
Pandas ile Veriyi Temizleme ve Analiz Etme
Veriyi toplamak işin sadece ilk aşamasıdır. Toplanan veriler genellikle gürültülü, eksik veya tutarsızdır. Pandas, veriyi anlamlı hale getirmek için güçlü fonksiyonlar sunar.
- Eksik Verilerin Yönetimi:
dropna()veyafillna()metotları ile eksik satırlar temizlenir veya doldurulur. - Gruplama ve Özetleme:
groupby()fonksiyonu ile veriler kategorilere ayrılır ve istatistiksel özetler çıkarılır. - Zaman Serisi Analizi: Tarih sütunları indeks yapılarak haftalık, aylık veya yıllık trend değişimleri kolayca hesaplanır.
Sonuç ve Otomasyon
Python ile veri ve trend takibini sürekli kılmak için bu scriptleri birer otomasyon haline getirebilirsiniz. Hazırladığınız Python dosyalarını işletim sisteminizin zamanlayıcısı (Linux için Cron Job, Windows için Task Scheduler) veya bulut tabanlı servisler (GitHub Actions, AWS Lambda) aracılığıyla belirli aralıklarla çalıştırabilirsiniz. Böylece manuel iş yükünden kurtularak tamamen stratejik kararlara odaklanabilirsiniz.