Je cherche une semaine comment vérifier si une case à cocher est cochée dans Selenium webdriver avec python, mais je ne trouve que des algoritms de Java. J'ai lu la documentation du webdriver et je n'ai pas de réponse à cela. Quelqu'un a une solution?
Je trouve un autre moyen qui fonctionne, mais utilise javascript à l'intérieur.
def is_checked(self, driver, item):
checked = driver.execute_script(("return document.getElementById('%s').checked") % item)
return checked
Il existe une propriété WebElement appelée is_selected()
, et pour une case à cocher, cela indique si elle est cochée ou non. Par conséquent, vous pouvez vérifier si elle est cochée/décochée en faisant quelque chose comme ceci:
driver.find_element_by_name('<check_box_name>').is_selected()
ou
driver.find_element_by_id('<check_box_id>').is_selected()
Je me souviens avoir eu le même problème de ne pas pouvoir trouver de documentation. Il est plus facile de trouver une fois que vous connaissez le nom ( ici sont des documents, is_selected
Est vers le bas), mais la façon dont j'ai essayé de trouver différentes options/propriétés pour Selenium objets consiste simplement à déposer dir(some_object)
dans le code et à voir quelles options apparaissent (c'est ainsi que is_selected
est apparu).
J'utilise driver.find_element_by_name("< check_box_name >").is_selected()