现在我正在使用HtmlAgilityPack
。寻找与CSS选择器的C#Html解析器
但很难通过Xpath进行选择。在Java中我知道Jsoup
。有没有.net库也可以做到这一点?
解析Html并使用CSS样式的裁剪器查找元素。
现在我正在使用HtmlAgilityPack
。寻找与CSS选择器的C#Html解析器
但很难通过Xpath进行选择。在Java中我知道Jsoup
。有没有.net库也可以做到这一点?
解析Html并使用CSS样式的裁剪器查找元素。
尝试Fizzler与HtmlAgilityPack。
Fizzler是:
一个.NET库选择基于CSS选择一个节点树项目。 默认实现基于HTMLAgilityPack并从HTML文档中进行选择。从项目网站
例子:
// 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");
与CSQuery的100%CSS2和CSS3相比,FIzzler并没有得到充分利用(自09年7月以来没有更新),并且仅部分实现了CSS3。 CsQuery也索引文档,比Fizzler + HAP快得多。 – 2013-03-04 06:58:28
由于缺陷的数量,我不会推荐csQuery – tic 2015-07-30 04:34:25
你可以试试这个库,它看起来非常有前途我。 我没有亲自尝试,所以如果你试试图书馆,也许你想和我们分享你的经验。
库:CsQuery 网站:https://github.com/jamietre/CsQuery 样品:
// get all elements that are first children within 'body' (e.g. excluding 'head')
var childSpans = dom["body"].Find(":first-child");
什么是使用XPath的问题,你有一个例子吗? – Trisped 2013-03-03 21:07:53
应该被关闭为http://stackoverflow.com/questions/1580635/is-there-a-jquery-like-css-html-selector-that-can-be-used-in-c,而不是关闭-topic – 2017-01-20 00:36:43