2012-07-16 59 views
-1

如果已经解决了这样的问题,我表示歉意。
我试图检索使用Selenium(webdriver)在网站的HTML表格中显示的文本。我在Visual Studios 2010中使用C#进行编程.Html看起来如下:如何检索使用Selenium 1 C的html表值(文本)#

<tbody> 
<tr> 
    <tr id="RFCol"> 
     <th class="subhead"> 
      <cufon class="cufon cufon-canvas" alt="BROCHURE " style="width: 60px; height: 12px;"> 
      <cufon class="cufon cufon-canvas" alt="FARE" style="width: 24px; height: 12px;"> 
     </th> 
     <td class=""> 
      <span id="RFCol1" class="RFCol"> 
       <del>$5,190</del> 
      </span> 
     </td> 
     <td class=""> 
      <span id="RFCol2" class="RFCol"> 
       <del>$6,660</del> 
      </span> 
     </td> 
     <td class=""> 
     <td class=""> 
     <td class=""> 
    </tr> 
    <tr id="PFCol"> 
    <tr id="CSDCol"> 
    <tr id="PFCol"> 
</tbody> 

粗体文本是我所追求的。我试图将文本存储在字符串变量中,以使其准备写入文本文件。任何帮助将不胜感激,因为我一直无法实现这一点。下面是我的一些尝试。我试图使用xpath来检索值,但不能。

IWebElement table_element11 = selenium.FindElement(By.XPath("/html/body/form/div[3]/div/div[2]/div[4]/table/tbody/tr[2]/td/span/del")); 
+0

嘿,所有。我想出了这个问题,或者无论如何都是。我仍然无法使用诸如GetText()或GetTable()这样的命令,这很奇怪,因为我使用Selenium和webdriver pack。但无论如何。一个非常简单的解决方案就是使用上面的xpath访问元素。然后只需将该对象转换为文本:IWebElement table_element11 = selenium.FindElement(By.XPath(“/ html/body/form/div [3]/div/div [2]/div [4]/table/tbody/tr [ 2]/TD /跨度/ DEL“)); table_element11.text; (这将返回所需的结果) – newITguy 2012-07-17 00:15:37

+0

如果您认为其他人不需要您的答案,您可以自己编写答案或删除整个问题 – 2012-07-17 07:54:56

回答

-1
"//del[contains(., '$')]" 

使用这个XPath会给你所有包含$符号的“Del”页面上的元素。从这一点,您可以使用您希望访问数据的方法,就像您在评论中所述。

+0

由于某些原因,我无法使用该Xpath完成此操作,这是我的问题的一部分。使用“其他”XPath访问页面元素,我只是将其转换为文本。谢谢大家的帮助! – newITguy 2012-07-18 17:28:31