c# - 寻找带有 CSS 选择器的 C# Html 解析器

标签 c# java html

<分区>

现在我正在使用 HtmlAgilityPack

但是Xpath很难选择。

在 Java 中我知道 Jsoup。有没有做同样事情的 .net 库?

解析 Html 并使用 CSS 样式选择器来查找元素。

最佳答案

尝试 Fizzler使用 HtmlAgilityPack。

Fizzler 是:

A .NET library to select items from a node tree based on a CSS selector. The default implementation is based on HTMLAgilityPack and selects from HTML documents.

项目网站示例:

// Load the document using HTMLAgilityPack as normal
var html = new HtmlDocument();
html.LoadHtml(@"
  <html>
      <head></head>
      <body>
        <div>
          <p class='content'>Fizzler</p>
          <p>CSS Selector Engine</p></div>
      </body>
  </html>");

// Fizzler for HtmlAgilityPack is implemented as the 
// QuerySelectorAll extension method on HtmlNode

var document = htmlDocument.DocumentNode;

// yields: [<p class="content">Fizzler</p>]
document.QuerySelectorAll(".content"); 

// yields: [<p class="content">Fizzler</p>,<p>CSS Selector Engine</p>]
document.QuerySelectorAll("p");

// yields empty sequence
document.QuerySelectorAll("body>p");

// yields [<p class="content">Fizzler</p>,<p>CSS Selector Engine</p>]
document.QuerySelectorAll("body p");

// yields [<p class="content">Fizzler</p>]
document.QuerySelectorAll("p:first-child");

关于c# - 寻找带有 CSS 选择器的 C# Html 解析器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15190713/

相关文章:

c# - SqlParameter 不允许表名 - 没有 sql 注入(inject)攻击的其他选项?

c# - Linq2SQL生成的奇怪SQL

c# - 从 JPEG 中提取 EXIF

java - 线程 "main"java.lang.IllegalArgumentException : Wrong FS: expected: file:///中的异常

jquery - 使元素的宽度和高度充满屏幕

javascript - 如何创建 HTML+jScript 滚动触发框

CodeRunner 2 中的 C# 汇编

java - 如何使用 Selenium WebDriver 克服 SSL 证书

java - CompareTo() 在客户端/服务器应用程序中给出相互冲突的结果?

javascript - .click 不适用于图形中的 anchor