如何在网页上找到隐藏的元素

时间:2018-04-13 10:07:56

标签: python-2.7 selenium selenium-webdriver xpath webdriver

我正在尝试使用以下内容在文本框中传递一些内容:

ucfirst

显然没有任何东西可以获得通行证。 点击按钮的类似问题:

driver.find_element_by_xpath('path').send_keys(value)

这也无效,在我能看到的代码中

  

显示:无:

driver.find_element_by_xpath('path').click()

3 个答案:

答案 0 :(得分:1)

根据您分享的HTML和@Sighil指出样式属性显示:无是上一个<li>标记的一部分,不得影响用户名字段。要将一些文本传递到用户名字段,您可以使用以下代码行:

driver.find_element_by_xpath("//input[@class='form-control' and @id='Username']").send_keys("Dimple Mathew")

您可能需要诱导服务员使用户名字段可以互动,在这种情况下,您必须按如下方式诱导 WebDriverWait

WebDriverWait(driver, 20).until(EC.element_to_be_clickable((By.XPATH, "//input[@class='form-control' and @id='Username']"))).send_keys("Dimple Mathew")

答案 1 :(得分:0)

在使用sendkeys或单击之前使用显式wait语句。根据我的理解元素在click或sendkeys时不可见。

For your reference visit Explicit and Implicit Wait Docs

答案 2 :(得分:0)

不久前我遇到了类似的问题,试试这个:

js= "document.getElementById('Username').value = '" + str(YOURVALUE) + "';"
driver.execute_script(js)

它对我有用,希望这有帮助。