• 05-01-2022, 20:30:25
    #1
    Hata veren kod

    from bs4 import BeautifulSoup
    import requests
    from selenium import webdriver
    from selenium.webdriver.common.keys import Keys
    import time
    
    kitap_adi = input("Lütfen Kitap Adını Giriniz: ")
    yayin_evi = input("Lütfen Yayınevi Adını Giriniz: ")
    
    driver = webdriver.Chrome()
    driver.get("https://www.google.com.tr/")
    
    bkmkitapevi = driver.find_elements_by_css_selector(".gLFyf.gsfi")
    bkmkitapevi.send_keys(kitap_adi+ " "+ yayin_evi+ " "+ " site:bkmkitap.com")
    time.sleep(3)
    
    bkmkitapevi.send_keys(Keys.ENTER)
    time.sleep(2)
    Alınan Hata



    bu orjinal kodda hata yok
    from bs4 import BeautifulSoup
    import requests
    from selenium import webdriver
    from selenium.webdriver.common.keys import Keys
    import time
    
    kitap_adi = input("Lütfen Kitap Adını Giriniz: ")
    yayin_evi = input("Lütfen Yayınevi Adını Giriniz: ")
    
    driver = webdriver.Chrome()
    driver.get("https://www.google.com.tr/")
    
    bkm_kitap_veri_girisi = driver.find_element_by_css_selector(".gLFyf.gsfi")
    bkm_kitap_veri_girisi.send_keys(kitap_adi+ " "+ yayin_evi+ " "+" site:bkmkitap.com")
    time.sleep(2)
    
    bkm_kitap_veri_girisi.send_keys(Keys.ENTER)
    time.sleep(2)
    Nerde hata yapıyorum. Dersteki gibi yazıyorum bende hata çıkıyor, Orjinal kodda hata yok
  • 05-01-2022, 20:36:43
    #2
    Üyeliği durduruldu
    Birden fazla element olma olasılığıyla liste yaratıyor.

    Bunu

    bkm_kitap_veri_girisi = driver.find_element_by_css_selector(".gLFyf.gsfi")

    Bunla değiş:

    bkm_kitap_veri_girisi = driver.find_element_by_css_selector(".gLFyf.gsfi")[0]
  • 05-01-2022, 20:38:36
    #3
    find_elements olarak gönderirseniz çıktı array list olur diye hatırlıyorum. Orjinal kodda da find_element var find_elements yerine zira tek bir arama butonu varken birden fazla arama yapınca selenium send keys yapamıyor olabilir.
  • 05-01-2022, 20:39:28
    #4
    Elements demişsiniz onu element olarak değiştirin css selectorden önce
  • 05-01-2022, 20:40:06
    #5
    muhammedaksam adlı üyeden alıntı: mesajı görüntüle
    find_elements olarak gönderirseniz çıktı array list olur diye hatırlıyorum. Orjinal kodda da find_element var find_elements yerine zira tek bir arama butonu varken birden fazla arama yapınca selenium send keys yapamıyor olabilir.
    aa nasıl onu elements yapmışım hayret göremedim. elements listeye dönüştürür dediğiniz gibi, gözümden kaçmış, çok teşekkürler