【问题标题】:Extract id style from html page using Html agility pack使用 Html 敏捷包从 html 页面中提取 id 样式
【发布时间】:2014-12-12 19:46:59
【问题描述】:

我有一个 C# 应用程序。我需要从 html 页面中提取数据并将其添加到我的数据库中。 html 页面包含一些 css 代码,我对 css 中的所有 id 属性感兴趣。如何将 id 的信息提取到我的代码中?我尝试了类似的方法,但它似乎不起作用:

var styles = document.DocumentNode.SelecNodes("//style");
foreach(HtmlNode node in styles)
{
   var text = node.Attributes["id"];
}

非常感谢任何帮助!

【问题讨论】:

    标签: c# html css


    【解决方案1】:

    与其说是一条鱼,不如说是一根钓鱼竿,但这就是我做 ATM 的全部时间。

    首先,看看这个教程:xpath on w3schools。我已经使用 XPath 完成了一些工作,只是在完成了他们的教程之后,事情才开始变得有意义。

    那么,请获取这个html agility test pack,它可以让您针对您要解析的页面快速测试您的代码。

    从这里开始,应该是得到你想要的东西的捷径。

    【讨论】:

      【解决方案2】:

      试试这个,直接访问Id属性:

      var styles = document.DocumentNode.SelecNodes("//*[@style]");
      foreach(HtmlNode node in styles)
      {
         var text = node.Id;
      }
      

      编辑: 表达式更改为“//*[@style]”,它只获取具有样式属性的元素。

      【讨论】:

      • 你用了什么... //@style 或 //style ?还有哪里出错了?
      • 这次我使用了 //@style 并且没有收到任何错误。唯一的问题是它从其他 div 中获取了一些字符串,而不是从我需要的地方获取。
      • 表达式更改为“//*[@style]”,它只获取具有样式属性的元素,现在检查更新的代码。
      猜你喜欢
      • 2010-12-19
      • 2013-02-28
      • 2017-11-21
      • 1970-01-01
      • 1970-01-01
      • 2017-04-19
      • 1970-01-01
      • 1970-01-01
      • 2011-01-26
      相关资源
      最近更新 更多