Selenium Automation的XPATH和CSS - 需要帮助

时间:2014-01-30 04:19:14

标签: css selenium xpath

我想找到XPATH / CSS定位器来从以下结构中提取文本。 请帮助。

<div class="page-header song-wrap">
<div class="art solo-art">
<div class="meta-info">
<h1 class="page-title">
Zehnaseeb

我想给定位器/ XPATH以便它可以返回文本“Zehnaseeb”(在这种情况下)

这没有产生任何结果,

driver.findElement(By.xpath(” .//*[@ ID = '主'] / DIV /部分/ DIV [1] / DIV [2] / H1" ))的getText();

3 个答案:

答案 0 :(得分:0)

如果您使用的是C#,我建议使用“ScrapySharp”,它非常适合解析HTTML。

https://bitbucket.org/rflechner/scrapysharp/wiki/Home

Document htmlDoc = new HtmlDocument();
htmlDoc.loadHtml(driver.PageSource);
var zehnaseebstring = doc.DocumentNode.CssSelect("h1.page-title").SingleOrDefault().InnerText;

这应该有效。

答案 1 :(得分:0)

我会检查其间的所有元素,看看层次结构是否正确,但您可以尝试通过使用后代//来删除其中的一些元素来简化

//*[@id='main']//h1[@class='page-title']

答案 2 :(得分:0)

您是否尝试了waiting元素,

String text = new WebDriverWait(driver,30).until(ExpectedConditions.visibilityOfElementLocated(By.cssSelector("div.page-header h1.page-title"))).getText();