1

我正在尝试使用 xpaths 提取网页上元素(下拉框)中显示的值。我在 firefox 中安装了 firebug 和 xpath 检查器,我试图从中提取的元素如下所示:

<input id="dateTxt" class="textBox" value="Thursday June 20" onfocus="this.blur()"   onclick="gird.show('date')" size="9" maxlength="50" readonly="readonly">

抱歉,我不允许分享我正在使用的确切内容,但这就是 jist。

我想将值的内容( value = "Thursday June 20" )保存到一个字符串中,以便我可以解析日期。但我一直无法让 xpath 正确。到目前为止,这就是我在代码中所拥有的

text = @driver.find_element(:xpath => "//*[@id=\"dateTxt\"]")

如果我对此执行 .text ,则不会为文本分配任何内容。

如果需要更多信息,请索取,这是我使用 xpaths 的第一天。

4

1 回答 1

2

嗯..您可以尝试以下方法:

@driver.find_element(:css,"input#dateTxt").attribute("value")
#=> "Thursday June 20"

@driver.find_element(:xpath,"//input[@id = 'dateTxt']").attribute("value")
#=> "Thursday June 20"

看看下面的页面Element examples:Selenium::WebDriver::Element#attribute

于 2013-06-20T19:35:17.330 回答