• 28-04-2021, 22:48:28
    #1
    İstediklerim... Stok kodu, Marka, ve varyant renk ve bedenler...

    Python ile aşağıda ki koda kadar gelebildim bu kısımda takıldım
    from bs4 import BeautifulSoup
    import requests
    import pandas as pd
    r = requests.get('https://www.selectmoda.com/kategori/disgiyim')
    soup = BeautifulSoup(r.content,"lxml")
    st1 = soup.find("div",attrs={"class":"showcase-container"})
    st2 = st1.find_all("div",attrs={"class":"col-6 col-lg-4"})
    
    for detaylar in st2:
    link_sonu = detaylar.a.get("href")
    link_basi = "https://www.selectmoda.com"
    link = link_basi+link_sonu
    print(link)
    
    r1 = requests.get(link)
    soup1 = BeautifulSoup(r1.content,"lxml")
    oldprice = soup1.find("div",attrs={"class":"product-price-old"}).text.strip()
    newprice = soup1.find("div",attrs={"class":"product-price-new"}).text.strip()
    soup1.find_all("div",attrs={"class":"product-list-content"})
    <div class="product-list-row product-brands">
    <div class="product-list-title">Marka</div>
    <div class="product-list-content">
    <a href="/marka/by-mor" title="by Mor marka etiketine sahip diğer ürünler">by Mor</a>
    </div>
    </div>
    <div class="product-list-row">
    <div class="product-list-title">Stok Kodu</div>
    <div class="product-list-content">513721NS78018</div>
    </div>
    <div class="product-list-row">
    <div class="product-list-title">Garanti Süresi</div>
    <div class="product-list-content">24 Ay</div>
    </div>
    <div class="product-list-row">
    <div class="product-list-title">
    Fiyat
    </div>
    <div class="product-list-content">138,80 TL + KDV</div>
    </div>
    </div>
    <div class="product-options">
    <div class="product-options-title">Seçenekler</div>
    <div class="product-options-content">
    <div class="variant-select">
    <div class="variant-list" id="variant-0">
    <select class="form-control" name="variant-0" data-selector="select-dropdown-variant" data-group-id="2" data-group-index="0" >
    <option value="0">Renk Seçiniz</option>
    <option value="56" >Haki </option>
    </select>
    </div>
    <div class="variant-list" id="variant-1">
    <select class="form-control" name="variant-1" data-selector="select-dropdown-variant" data-group-id="3" data-group-index="1" disabled="true">
    <option value="0">Beden Seçiniz</option>
    <option value="8" >40 </option>
    <option value="7" >42 </option>
    </select>
    </div>
    </div>
    
    
    
    
    </div>
                                </div>
  • 28-04-2021, 22:56:34
    #2
    En iyisi sanırım
    Gelen veriyi listeye atıp 1. indexi çekin
  • 28-04-2021, 23:00:40
    #3
    Gelistirici adlı üyeden alıntı: mesajı görüntüle
    Gelen veriyi listeye atıp 1. indexi çekin
    Çok iyi bilmiyorum karşıma çıkan zorluğu nasıl aşarım başlayalı 15 gün oldu... ama verilen örneklerin çoğunda varyantlı ürün nasıl çekildiği ve hatta stokta olmayan varyanta stokta yok stokta olana ise stokta var diyen bir örnek çalışmada bulamadım... Acemiiii ama öğrenmek için çok hevesli... buraya konu açanakadar google youtube çok konuları okudum video izledim... örnek kodu verebilir misin?
  • 28-04-2021, 23:09:08
    #4
    En iyisi sanırım
    print(soup.find_all('div', {'class':'product-list-content'})[0].text.strip())
    [0] olan kısmı arttırarak bakabilirsiniz.

    Birde 15 günlük süre fazla erken önce temelleri öğrenin sonrasında zorluk çekersiniz.
  • 28-04-2021, 23:19:42
    #5
    Gelistirici adlı üyeden alıntı: mesajı görüntüle
    print(soup.find_all('div', {'class':'product-list-content'})[0].text.strip())
    [0] olan kısmı arttırarak bakabilirsiniz.

    Birde 15 günlük süre fazla erken önce temelleri öğrenin sonrasında zorluk çekersiniz.
    Çok teşek ederim... Stok kodunu aldım... Az öncede renk ve bedeni çektim
  • 28-04-2021, 23:47:21
    #6
    Gelistirici adlı üyeden alıntı: mesajı görüntüle
    print(soup.find_all('div', {'class':'product-list-content'})[0].text.strip())
    [0] olan kısmı arttırarak bakabilirsiniz.

    Birde 15 günlük süre fazla erken önce temelleri öğrenin sonrasında zorluk çekersiniz.
    Son takıldığım nokta toplu resim adreslerini nasıl alırım.

    <div class="container">
    <div class="product-area-top">
    <div class="row">
    <div class="col-lg-7 mb-4">
    <div class="product-left">
    <div class="row">
    <div class="col-md-2 order-2 order-md-1">
    <div id="product-thumb-image">
    <div class="thumb-item">
    <a href="#" data-image="//st2.myideasoft.com/idea/fw/45/myassets/products/976/513721-4xqbukiz-01-jpg.jpg?revision=1604862125" data-zoom-image="//st2.myideasoft.com/idea/fw/45/myassets/products/976/513721-4xqbukiz-01-jpg.jpg?revision=1604862125">
    <img src="//st1.myideasoft.com/idea/fw/45/myassets/products/976/513721-4xqbukiz-01-jpg_min.jpg?revision=1604862125" alt="Kadın Haki Fermuar Detaylı Mont">
    </a>
    </div>
    <div class="thumb-item">
    <a href="#" data-image="//st2.myideasoft.com/idea/fw/45/myassets/products/976/513721-wjz1kvus-02-jpg.jpg?revision=1604862128" data-zoom-image="//st2.myideasoft.com/idea/fw/45/myassets/products/976/513721-wjz1kvus-02-jpg.jpg?revision=1604862128">
    <img src="//st2.myideasoft.com/idea/fw/45/myassets/products/976/513721-wjz1kvus-02-jpg_min.jpg?revision=1604862128" alt="Kadın Haki Fermuar Detaylı Mont">
    </a>
    </div>
    <div class="thumb-item">
    <a href="#" data-image="//st1.myideasoft.com/idea/fw/45/myassets/products/976/513721-vtdbugen-03-jpg.jpg?revision=1604862130" data-zoom-image="//st1.myideasoft.com/idea/fw/45/myassets/products/976/513721-vtdbugen-03-jpg.jpg?revision=1604862130">
    <img src="//st2.myideasoft.com/idea/fw/45/myassets/products/976/513721-vtdbugen-03-jpg_min.jpg?revision=1604862130" alt="Kadın Haki Fermuar Detaylı Mont">
    </a>
    </div>
    <div class="thumb-item">
    <a href="#" data-image="//st3.myideasoft.com/idea/fw/45/myassets/products/976/513721-pqjahno2-04-jpg.jpg?revision=1604862132" data-zoom-image="//st3.myideasoft.com/idea/fw/45/myassets/products/976/513721-pqjahno2-04-jpg.jpg?revision=1604862132">
    <img src="//st1.myideasoft.com/idea/fw/45/myassets/products/976/513721-pqjahno2-04-jpg_min.jpg?revision=1604862132" alt="Kadın Haki Fermuar Detaylı Mont">
    </a>
    </div>
    </div>
    </div>
    <div class="col-md-10 order-1 order-md-2">
    <div class="product-image-container">
    <div class="product-image">
    <a class="product-label-container" href="/urun/kadin-haki-fermuar-detayli-mont-ns78018-1" aria-label="Product Detail">
    </a>
    <div id="product-primary-image">
    <img id="primary-image" alt="Kadın Haki Fermuar Detaylı Mont" src="//st2.myideasoft.com/idea/fw/45/myassets/products/976/513721-4xqbukiz-01-jpg.jpg?revision=1604862125" data-zoom-image="//st2.myideasoft.com/idea/fw/45/myassets/products/976/513721-4xqbukiz-01-jpg.jpg?revision=1604862125" />
    </div>
    </div>
    </div>
    </div>
    </div>
    </div>
                    </div>
  • 28-04-2021, 23:50:04
    #7
    En iyisi sanırım
    for item in soup.find_all('a'):
       print(item['data-image'])
    başka bir sorunuz vs var ise ücret karşılığı direkt programı hazırlayabilirim
  • 29-04-2021, 00:29:25
    #8
    İlginize teşekkürler son verdiğiniz kod hata verdi...

    KeyError Traceback (most recent call last)
    <ipython-input-92-8f336fa24755> in <module>
         22      23 for item in soup1.find_all('a'):
    ---> 24    print(item['<font color="#B9BDB6"><font face="consolas, bitstream vera sans mono, courier new, Courier, monospace">data-image</font></font> '])
    
    ~\anaconda3\lib\site-packages\bs4\element.py in __getitem__(self, key)
       1404 """tag[key] returns the value of the 'key' attribute for the Tag,
       1405 and throws an exception if it's not there."""
    -> 1406         return self.attrs[key]
       1407    1408     def __iter__(self):
    
    KeyError: '<font color="#B9BDB6"><font face="consolas, bitstream vera sans mono, courier new, Courier, monospace">data-image</font></font> '
  • 29-04-2021, 04:19:17
    #9
    En iyisi sanırım
    sakurt adlı üyeden alıntı: mesajı görüntüle
    İlginize teşekkürler son verdiğiniz kod hata verdi...

    KeyError Traceback (most recent call last)
    <ipython-input-92-8f336fa24755> in <module>
         22      23 for item in soup1.find_all('a'):
    ---> 24    print(item['<font color="#B9BDB6"><font face="consolas, bitstream vera sans mono, courier new, Courier, monospace">data-image</font></font> '])
    
    ~\anaconda3\lib\site-packages\bs4\element.py in __getitem__(self, key)
       1404 """tag[key] returns the value of the 'key' attribute for the Tag,
       1405 and throws an exception if it's not there."""
    -> 1406         return self.attrs[key]
       1407    1408     def __iter__(self):
    
    KeyError: '<font color="#B9BDB6"><font face="consolas, bitstream vera sans mono, courier new, Courier, monospace">data-image</font></font> '
    düzeltmiştim sonrasında kopyala yapıştır yapınca farklı geldi