Çözüldü Python Selenium Tagname'de 2. linki Click etme

Bu konu çözüldü olarak işaretlenmiştir. Çözülmediğini düşünüyorsanız konuyu rapor edebilirsiniz.

ErrorCorrection

Hectopat
Katılım
11 Ağustos 2022
Mesajlar
2.549
Çözümler
4
Daha fazla  
Cinsiyet
Erkek
Kod:
click = driver.find_element(By.TAG_NAME,"h3(2)")
click.click()

Burada H3 olan ilk linke tıklıyor ama benim istediğim 2. veya 3. linke tıklaması. Nasıl yapabilirim?
 
Çözüm
Python:
elements = driver.find_elements(By.TAG_NAME, 'h3')
element = elements[1]
element.click()
Tag name ile seçim yaparken ikinciyi seçmesini belirtemiyoruz. Bende tüm h3 elementlerini seçip bir array içerisine aldım. Daha sonra array içinden 2. elementi alıyoruz.
Kod:
click = driver.find_element(By.TAG_NAME,"h3(2)")
click.click()

Burada H3 olan ilk linke tıklıyor ama benim istediğim 2. veya 3. linke tıklaması. Nasıl yapabilirim?
Neden tag name kullanıyorsunuz css selector gibi seçenekler varken? Tag name bulunan ilk elementi döndürür.
 
Python:
element = driver.find_element(by.CSS_SELECTOR, "selector:nth-of-type(2)")
element.click()
2. h3 tagını bulamadım ama bahsettiğiniz elemente sağ tıklayıp Copy kısmından copy selector diyip selector yazdığım yere yapıştırın.
 
Benim dediğim şu hocam.

bunları h3 olduğunu zaten bilirsiniz. Ben bunların 2. cisini veya 3. cüsünü seçmeye çalışıyorum.
her hangi bir web search içinde yapacağım için bu sitedeki özel koldarı değilde hepisnde genel olanları kullanmam lazım. Örneğin gösterdiğim linkler her yerde h3 ama linkleri farklı
 
Python:
elements = driver.find_elements(By.TAG_NAME, 'h3')
element = elements[1]
element.click()
Tag name ile seçim yaparken ikinciyi seçmesini belirtemiyoruz. Bende tüm h3 elementlerini seçip bir array içerisine aldım. Daha sonra array içinden 2. elementi alıyoruz.
 
Çözüm
Hmmm valla mantıklı hocam. Teşekkürler hocam.
 
Bu siteyi kullanmak için çerezler gereklidir. Siteyi kullanmaya devam etmek için çerezleri kabul etmelisiniz. Daha Fazlasını Öğren.…