c# - Selenium - 获取元素 html 而不是文本值

标签 c# html-parsing selenium-webdriver

通过该代码,我已经从 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/

相关文章:

c# - ASP.NET Web API POST 参数为空

python - 如何提取 "br"之前的文本?

java - selenium webdriver - 等待谷歌地图加载所有图 block

testing - 在命令行上运行 Selenium2 IDE 测试用例

C# Datetime 到 ODBC Datetime 转换错误

c# - 使用 Alpine Docker镜像时连接到MongoDb Atlas失败

C# record ToString() 导致堆栈溢出并停止调试 session 并出现奇怪的错误

java - Jsoup - 使用字符集 iso-8859-1 解析 HTML 文件

perl - 如何在html树中向上移动节点并提取链接?

selenium - 在 Selenium 中创建测试脚本时,我收到以下错误