通过该代码,我已经从 html 文档中提取了所有需要的文本
private void RunThroughSearch(string url)
{
private IWebDriver driver;
driver = new FirefoxDriver();
INavigation nav = driver.Navigate();
nav.GoToUrl(url);
var div = driver.FindElement(By.Id("results"));
var element = driver.FindElements(By.ClassName("sa_wr"));
}
尽管我需要优化提取文档的结果
Container
HEADER -> Title of a given block
Url -> Link to the relevant block
text -> body of a given block
/Container
如您在我的代码中所见,我能够获取文本部分的值 作为一个文本值,这很好,但如果我想拥有 容器的值为 HTML 而不是提取的文本?
<div class="container">
<div class="Header"> Title...</div>
<div class="Url"> www.example.co.il</div>
<div class="ResConent"> bla.. </div>
</div>
所以容器在一个页面中大约出现10次 我需要提取它的 innerHtml 。
有什么想法吗? (使用 Selenium )
最佳答案
这似乎对我有用,而且代码更少:
var element = driver.FindElement(By.ClassName("sa_wr"));
var innerHtml = element.GetAttribute("innerHTML");
关于c# - Selenium - 获取元素 html 而不是文本值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16862100/