Arkadaşlar selenium ile buton tıklamayı yapacağım fakat işlem bu sitede ve giriş yap buttonuna tıklamak istiyorum fakat id bulamıyorum nasıl yaparım ?
İşlem yapmak istediğiniz elementin(sizin için button) xpath’ini alarak yapabilirsiniz.
Örnek olarak;
from selenium import webdriver
from selenium.webdriver import FirefoxOptions
browser = webdriver.Firefox()
browser.get("https://websitesi")
browser.maximize_window()
button = browser.find_element_by_xpath('/html/body/div[1]/div[1]/div[1]/div/ul/li[1]/a/span')
button.click()
mesela girişdeki giriş yap butonunu nasıl yaparım
from selenium import webdriver
from selenium.webdriver.common.keys import Keys
from selenium.webdriver import FirefoxOptions
import sys
import time
sys.setrecursionlimit(100000)
browser=webdriver.Firefox()
browser.get("https://forum.yazbel.com")
browser.maximize_window()
time.sleep(2)
girisbutonu = browser.find_element_by_xpath('/html/body/section/div/div[1]/header/div/div/div[2]/span/button[2]')
girisbutonu.click()
time.sleep(2)
kullaniciadiinputu = browser.find_element_by_xpath('/html/body/section/div/div[3]/div/div/div/div[3]/div[1]/form/div[1]/table/tbody/tr[1]/td[2]/input')
kullaniciadiinputu.send_keys("kullanıcı adı")
sifreinputu = browser.find_element_by_xpath('/html/body/section/div/div[3]/div/div/div/div[3]/div[1]/form/div[1]/table/tbody/tr[2]/td[2]/input')
sifreinputu.send_keys("sifreniz")
Burada forum.yazbel.com 'a giriş yapmak için ufak bir kod bloğu hazırladım.
Widgetların yani site üzerindeki elementlerin xpath’lerini okutarak programımıza yapacağı işlemi tanıtıyoruz.
Bu arada yukarıdaki kodu çalıştırmak için Chrome tarayıcısı için chromedriver, Mozilla için ise geckodriver’ın bilgisayarınızda yüklü olması ve PATH’e dosya yolunu belirtmeniz gerekir.
Ve bir de tabi ki Selenium kütüphanesinin daha önceden komut isteminden ;
pip install selenium
yazılarak bilgisayarınızda yüklü olması gerekiyor.
o kadarını biliyorum saolun
Yukarıdaki bilgilendirmeyi sizin için değil de, bilmeyen birileri kodu çalıştırmayı denediğinde neden çalışmadığını bilsin diye yazmıştım aslında
peki bu işi phantomJS ile yapabilir miyiz?
https://pythonspot.com/selenium-phantomjs/ sanırım mümkün.
Butona sağ tık yapıp öğeyi incele kısmında
CSS Selector, xpath kopyalama oluyor. Ayrıca html kodlarında id kısmı bulunabilir.
ben bulamadım atabilirmisiniz öyle daha kolay olur