Button mit Selenium nur mit einer class drücke?


07.09.2020, 23:25

Hier, den Sign Up Button meine ich

1 Antwort

Mit find_elements_by_class_name bekommst du eine Liste aller Elemente mit dem übergebenen Wert im class-Attribut. Folgend brauchst du nur noch den Index, um das richtige Element zu bekommen.

So würdest du bspw. das zweite Vorkommen anklicken (sofern es denn existiert):

buttons = driver.find_elements_by_class_name('button')

if len(buttons) > 2:
  secondButton = buttons[1]
  secondButton.click()
else:
  print("Does not exist")

Wenn du eh stets den ersten Fund auswählen möchtest, verwende stattdessen find_element_by_class_name. Diese Funktion gibt dir direkt das erste Element zurück.

Andere Optionen zur Selektion von Elementen mit Selenium werden hier aufgelistet. Möglicherweise findest du eine Methode, die besser für deinen Anwendungsfall passt.

Cyl0w 
Fragesteller
 08.09.2020, 09:40

Das mit Driver.find_elements_by_class_name habe ich schon gemacht,

Ich gucke mir das gleich nochmal an.

0