如何使用Selenium Webdriver定位按钮元素?

问题描述 投票:-1回答:1

我在查找按钮并单击它时遇到问题。它出现在Internet Explorer中。我按类名使用但不起作用。

browser.find_element_by_css_selector("ui-button ui-corner-all ui-widget").click()

HTML:

python-3.x selenium-webdriver xpath css-selectors webdriverwait
1个回答
0
投票

要找到并单击带有文本为“接受”的元素,您需要引导WebDriverWait以使元素可单击,并且您可以使用以下任一Locator Strategies

  • 使用CSS_SELECTORWebDriverWait(browser, 20).until(EC.element_to_be_clickable((By.CSS_SELECTOR, "div.ui-dialog-buttonset>button.ui-button.ui-corner-all.ui-widget"))).click()
  • 使用XPATHWebDriverWait(browser, 20).until(EC.element_to_be_clickable((By.XPATH, "//div[@class='ui-dialog-buttonset']//button[@class='ui-button ui-corner-all ui-widget' and text()='Accept']"))).click()
  • 注意:您必须添加以下导入: from selenium.webdriver.support.ui import WebDriverWait from selenium.webdriver.common.by import By from selenium.webdriver.support import expected_conditions as EC
© www.soinside.com 2019 - 2024. All rights reserved.