【问题标题】:How can I click on this check box using Selenium Python?如何使用 Selenium Python 单击此复选框?
【发布时间】:2018-10-31 13:17:34
【问题描述】:

我可以单击页面上的所有其他复选框。但是到了这个,就不让我点击了

复选框的 HTML 代码是:

<input id="ContentPlaceHolder1_wucSignInStep2_chkTC" type="checkbox" name="ctl00$ContentPlaceHolder1$wucSignInStep2$chkTC">

我点击文本框的代码:

element = driver.find_element_by_xpath('//span[span/input[@name="checkbox checkbox-primary"]]').click()

如果需要,我可以提供完整的代码。

【问题讨论】:

  • 你得到什么错误?
  • eminent 在点 (305, 587) 不可点击。其他元素会收到点击
  • 我已经更新了我的答案来处理这个问题。请检查。

标签: python selenium-webdriver checkbox


【解决方案1】:

有一个id 与您的输入字段相关联!您可以使用 id 来查找元素

element = driver.find_element_by_id('ContentPlaceHolder1_wucSignInStep2_chkTC').click()

应该可以的。

如果您收到element not visible 错误,那么您可以尝试以下操作:

from selenium.webdriver.common.action_chains import ActionChains

element = driver.find_element_by_id("ContentPlaceHolder1_wucSignInStep2_chkTC")

actions = ActionChains(driver)
actions.move_to_element(element).perform()
driver.execute_script("arguments[0].click();", element)

上面的代码将使元素可见,并将鼠标光标放在复选框上。

【讨论】:

  • 当你尝试我得到错误:元素在点 (305, 587) 是不可点击的。其他元素会收到点击
  • 请尝试更新后的代码。另外,如果它可以帮助您解决问题,请随时将其标记为已接受。
猜你喜欢
  • 1970-01-01
  • 2019-10-10
  • 2022-01-07
  • 1970-01-01
  • 1970-01-01
  • 2017-09-24
  • 2021-12-11
  • 2021-12-23
  • 1970-01-01
相关资源
最近更新 更多