【问题标题】:How to get value from date filter input field with Selenium如何使用 Selenium 从日期过滤器输入字段中获取值
【发布时间】:2016-02-18 21:10:00
【问题描述】:

有一个带有输入字段和下拉日期选择器的日期过滤器,如下图

我想获取例如“From”输入字段的当前值(预期输出 = "03/13/2013")。所以对于以下元素的代码

<div class="input-group date" id="inputValidFrom">
        <input name="validFrom" class="form-control" id="inputValidFromValue" required="" type="text"> </input>

我使用Python's 行:

>>>from selenium import webdriver
>>>driver = webdriver.Ie()
>>>input = driver.get_element_by_xpath('//input[@name="validFrom"]')
>>>input.text # returns empty string
''
>>>input.get_attribute('value') # also returns ''
''
>>>input.value_of_css_property('text') # returns again just empty string
''

谁知道如何获取这个输入字段框属性?

【问题讨论】:

  • “From”元素在哪里设置?

标签: python selenium input


【解决方案1】:

您正在使用带有 XPath 的 IE 驱动程序。 尝试以小写形式编写属性名称。 http://www.seleniumhq.org/docs/03_webdriver.jsp#by-xpath

【讨论】:

  • 我在 xpaths 中使用小写属性,selenium 实际上可以“找到”元素,尽管应用了 Web 驱动程序,但我无法获取元素的文本值...
  • 好吧,这是一个错误的猜测。你试过firefox或chrome的驱动程序吗?它们的行为方式是否相同?
  • ...这是很好的猜测)我检查了 ChromeFireFox - a.get_attribute('value') 方法有效!所以看来这只是IE 的问题......这很糟糕,因为IE 是目标浏览器,我应该只使用它
  • 输入是 type="text" 并显示一个日期选择器。所以可能涉及到一些 JS 魔法。你能透露更多页面的部分吗?
猜你喜欢
  • 1970-01-01
  • 2014-07-21
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-11-14
  • 2021-04-08
  • 2023-03-31
  • 1970-01-01
相关资源
最近更新 更多