如何从此代码中获取2.22号码?
<div class="crash-row crash-0d54ae895d62d03cfb4bdcb502109630">
<div class="col bold h-col-1 c-green">2.22</div>
<div class="col h-col-2">-</div>
<div class="col h-col-3">-</div>
<div class="col h-col-4">-</div>
<div class="col h-col-5">
<a href="javascript:;" class="show-code">0d54ae895d62d03cfb4bdcb502109630</a>
</div>
<div class="col h-col-6">
<a href="javascript:;" class="show-code">8d76a8fa2b7613de95a7e13852055c77d013f441952a231c47ca0872bcdd64df</a>
</div>
<div class="clear">
</div>
</div>
我已经尝试过此代码,但是没有用!
注意:我给出的XPATH是For <div class="col bold h-col-1 c-green">2.22</div>
标记!
Console.Write(driver.FindElement(By.XPath("/html/body/div[2]/div[5]/div[2]/div[5]/div[3]/div[2]/div[2]/div[2]")).Text);
答案 0 :(得分:1)
您可以首先尝试使用相对xpath来查找元素
//div[contains(@class, 'h-col-1')]
然后尝试使用
获取值答案 1 :(得分:0)
要提取文本 2.22 ,因为该元素是动态元素,则可以将 WebDriverwait 与 element一起使用,并且可以使用以下任一解决方案:
CssSelector :
new WebDriverWait(driver, TimeSpan.FromSeconds(10)).Until(ExpectedConditions.ElementIsVisible(By.CssSelector("div.crash-row > div.c-green"))).GetAttribute("innerHTML");
XPath :
new WebDriverWait(driver, TimeSpan.FromSeconds(10)).Until(ExpectedConditions.ElementIsVisible(By.XPath("//div[contains(@class, 'crash-row')]/div[contains(@class, 'c-green')]"))).GetAttribute("innerHTML");