Resim

Akıllı Fiyat İzleyici

Uygulama Projesi: Akıllı Fiyat İzleyici

Bu proje, bir e-ticaret sitesindeki bir ürünün fiyatını günlük olarak takip etmeyi, veritabanına kaydetmeyi ve fiyat değişimini görselleştirmeyi hedefler.

Kapsanan Modüller: requests, BeautifulSoup, sqlite3, pandas, matplotlib, OOP, logging

Proje Adımları ve Rehberlik

Adım 1: Veri Tabanı Yapısını Kurma (sqlite3 ve OOP)

Amaç: Fiyat verilerini kalıcı ve yapılandırılmış bir şekilde saklamak.

  1. Sınıf Oluşturma: DatabaseManager adında bir sınıf oluşturun. Bu sınıf, yapıcı metodunda (__init__) veritabanı bağlantısını (sqlite3.connect()) kursun.

  2. Tablo Oluşturma: Veritabanında fiyatlar adında bir tablo oluşturun. Tablonun şu sütunları içermesi gerekir:

    • tarih (TEXT)

    • urun_adi (TEXT)

    • fiyat (REAL)

    • site (TEXT)

Adım 2: Web'den Fiyatı Çekme (requests ve BeautifulSoup)

Amaç: Belirlenen e-ticaret sitesinden güncel fiyatı programatik olarak almak.

  1. Sınıf Oluşturma: Scraper adında bir sınıf oluşturun.

  2. fiyat_cek Metodu: Bu metoda, takip edilecek ürünün URL'sini girdi olarak verin.

  3. HTML Çekme: requests.get(URL) kullanarak sayfanın HTML içeriğini alın.

  4. Ayrıştırma (Parsing): BeautifulSoup kullanarak HTML'i ayrıştırın.

  5. Fiyatı Bulma: Fiyatın bulunduğu HTML etiketini (genellikle <span> veya <div>) inceleyerek doğru CSS seçicisini veya ID'yi bulun ve fiyatı çekin. (İpucu: Sayfadaki fiyat metnini temizleyip, float (REAL) bir sayıya dönüştürmeyi unutmayın.)

  6. Kaydetme: Çekilen fiyatı, DatabaseManager sınıfının kaydet metodunu çağırarak veritabanına yazın.

Adım 3: Analiz ve Raporlama (pandas ve numpy)

Amaç: Ham veriden anlamlı özetler çıkarmak.

  1. Veriyi Yükleme: pd.read_sql() kullanarak veritabanındaki tüm fiyat verilerini bir pandas DataFrame'e yükleyin.

  2. Ortalama Hesaplama: DataFrame üzerinde .groupby() ve .mean() kullanarak haftalık ortalama fiyatları hesaplayın.

  3. Fiyat Farkı: numpy ile son fiyatın (bugünün fiyatı) tüm zamanların en düşük fiyatına göre yüzde kaç yüksek veya düşük olduğunu hesaplayın.

Adım 4: Görselleştirme (matplotlib)

Amaç: Fiyat hareketini görsel olarak sunmak.

  1. Grafik Çizimi: matplotlib.pyplot.plot() kullanarak X eksenine tarih, Y eksenine fiyat gelecek şekilde bir çizgi grafik oluşturun.

  2. Özelleştirme: Grafiğe başlık (plt.title), eksen etiketleri ve bir ızgara (plt.grid(True)) ekleyin.

  3. Kaydetme: Grafiği .png formatında bir dosyaya kaydedin.


"Kendi Projenizi Yazın!

Bu yapıyı bir rehber olarak kullanın, ancak kodları kendi mantığınızla yazın. Unutmayın, en iyi öğrenme, bir hatayla karşılaştığınızda onu kendiniz çözmektir. Tüm modülleri birleştirerek bu projeyi tamamladığınızda, artık sadece bir Python kullanıcısı değil, bağımsız bir Python geliştiricisi olacaksınız. Başarılar!"

Yorumlar

Bu blogdaki popüler yayınlar

Python random Modülü

Python print()

Yazılım Nedir?