Ders 08BeautifulSoup ile HTML'i parçalamakKonu ve yapılacaklar
requests bize HTML'i tek parça metin olarak verir. BeautifulSoup bu metni ağaç yapısına çevirir; find ve find_all etiket adıyla, select ve select_one CSS seçiciyle eleman bulur. Bulunan elemandan get_text() ile yazıyı, ["href"] gibi köşeli parantezle niteliği alırız.
- select("tr.kayit") ile sayfadaki 12 satırı alın.
- Her satırdan .urun-adi yazısını, .fiyat hücresinin data-fiyat niteliğini ve bağlantının href değerini çıkarın.
- Sonucu sözlük listesine çevirip yazdırın.
Ders 09Sayfa sayfa gezinmekKonu ve yapılacaklar
Uzun listeler sayfalara bölünür (pagination). Çoğu sitede sayfa numarası URL'deki bir parametredir: sayfa=1, sayfa=2... Bu deseni fark ettikten sonra bir döngüyle URL'leri üretir, her sayfayı çekip sonuçları tek listede biriktiririz. Liste 1200 kayıt ve 100 sayfadır; 101. sayfa 404 döner.
- Sayfa numaralarına tıklayıp URL'deki sayfa parametresini izleyin.
- for döngüsüyle 1'den 100'e kadar tüm sayfaları çekin, kayıtları biriktirin.
- Sayfa sayısını bilmeden, 404 gelene ya da "sonraki" bağlantısı bitene kadar ilerleyen sürümü yazın.
- İstekler arasına time.sleep koyup sunucuya nazik davranmayı anlatın.
- Tümü
- İnşaat
- Gıda
- Enerji ve Akaryakıt
- Tekstil
- Tarım ve Hayvancılık
- Elektrik ve Elektronik
- Ambalaj
- Kimya ve Temizlik
Toplam 150 kayıt · sayfa 12 / 13
Sayfa başına 12 kayıt
| Ürün | Sektör | Şehir | Fiyat | Değişim | Güncelleme |
|---|---|---|---|---|---|
| İnşaat Demiri Ø12ton | İnşaat | Kayseri | 25.020,55 ₺ | +1,30% | |
| Su Yalıtım Membranırulo | İnşaat | Trabzon | 1.578,72 ₺ | -2,82% | |
| Gazbeton Blok 20 cmm² | İnşaat | Konya | 510,50 ₺ | -1,55% | |
| Gazbeton Blok 20 cmm² | İnşaat | Kayseri | 515,02 ₺ | +1,08% | |
| İç Cephe Boyası15 lt | İnşaat | Trabzon | 2.569,17 ₺ | +2,88% | |
| Hazır Beton C30m³ | İnşaat | Bursa | 3.662,38 ₺ | +2,41% | |
| Çimento CEM I 42,550 kg torba | İnşaat | Adana | 256,20 ₺ | -2,91% | |
| Tuğla 13,5'lukadet | İnşaat | Bursa | 10,05 ₺ | -2,21% | |
| Alçı Levha 12,5 mmadet | İnşaat | Adana | 188,82 ₺ | -0,98% | |
| XPS Isı Yalıtım Levhası 5 cmm² | İnşaat | Ankara | 328,20 ₺ | +4,23% | |
| Hazır Beton C30m³ | İnşaat | Trabzon | 3.494,57 ₺ | -3,72% | |
| XPS Isı Yalıtım Levhası 5 cmm² | İnşaat | Kayseri | 288,70 ₺ | +0,68% |