Skip to content

aybasaran/smartmaple-assignment

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

7 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Projenin Amacı

Kitapyurdu ve Kitapsepeti sitelerindeki kitapları kazıyıp, MongoDB veritabanına kaydetmek.

Kullanılan Teknolojiler

  • Python 3.11.4
  • BeautifulSoup (bs4)
  • MongoDB (PyMongo)

Kurulum

Projeyi klonlayın.

git clone https://github.com/aybasaran/smartmaple-assignment.git

Proje dizinine gidin

cd smartmaple-assignment

Gerekli paketleri yükleyin.

pip install -r requirements.txt

Uygulamayı çalıştırın.

python app.py

Nasıl Çalışır?

Kitapyurdu.com ve Kitapsepeti.com siteleri static bir site olduğu için, requests kütüphanesi ile sayfaları istek atarak alabiliyoruz. Daha sonra BeautifulSoup kütüphanesi ile sayfaları parse ediyoruz. Öncelikle sitede tüm kitapları tek seferde listelemek için url olup olmadığını araştıyoruz. Kendi araştırmalarım sonucunda kitapyurdun'da index.php?route=product/category&filter_category_all=true&path=1&filter_in_stock=1&filter_in_shelf=1&sort=purchased_365&order=DESC&limit=100 gibi bir url in yapıcağımız işe uygun olduğunu fark ediyorum.Kitapsepeti.com'da /roman?stock=1 üzerinden ilerliyor olacağız. İki site'de öncelikle kaç adet sayfa olduğunu bulmak için ilgili pagination elementlerinin içini scrape ederek gerekli veriyi parse ediyoruz. Bunu sayfaları gezinmekte kullanacağız. Daha sonra sayfaları gezerek kitapların bulunduğu div elementlerini scrape ediyoruz. Bu elementlerin içindeki bilgileri parse ederek, kitap bilgilerini elde ediyoruz. Daha sonra bu bilgileri MongoDB veritabanına kaydediyoruz. Bu işlemi yaparken, her sayfada bir kaldığımız yerin kaydedilmesini sağlıyoruz. Böylece program herhangi bir sebepten dolayı durduğunda, kaldığı yerden devam edebiliyor.

Projenin Özellikleri

  • Kitap ve pagination bilgilerinin kazıma
  • Kitap bilgilerini MongoDB veritabanına kaydetme
  • Her Sayfa başlangıcında kaldığı yerin kaydedilmesi

Linkler

Kazılmış Örnek Kitaplar - Kitapyurdu Kazılmış Örnek Kitaplar - Kitapsepeti

Ekran Görüntüleri

Giriş ekranı Komut Satırı giriş

Kitapyurdu.com kazıma Komut Satırı seçim

Kitapsepeti.com Çıktı Komut Satırı çıktı

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages