在div类中选择一部分文本:
<div class="enabled_disabled disabled">
<div class="enabled_disabled">
<div class="enabled_disabled">
<div class="enabled_disabled">
<div class="enabled_disabled disabled">
我有那些div标签,是否有任何xpath语法或fizzler CSS选择器语法只选择那些只有 enabled_disabled 的div标签(中间的3)?不是那些 enabled_disabled已禁用
的人var html = new HtmlDocument();
html.LoadHtml(getitems);
var doc = html.DocumentNode;
var items = (from r in doc.QuerySelectorAll("div.enabled_disabled:not(.disabled)")
let Name = r.InnerHtml//QuerySelector("div.enabled_disabled div.title_bar div.rate_title span.name").InnerText.CleanInnerText()
select new {
CName = Name
}).ToArray();
答案 0 :(得分:10)
要选择仅类enabled_disabled
的元素,您可以使用:
[class='enabled_disabled']
使用:not
选择器为not available in vanilla Fizzler,但如果您抓取FizzlerEx
要选择仅类enabled_disabled
的元素,您可以使用:
div[@class='enabled_disabled']
如果div的指定班级以 enabled_disabled
开头:
div[class^=enabled_disabled ]
如果div指定的类包含 enabled_disabled
div[class*=enabled_disabled ]
如果div 仅具有类enabled_disabled
div[class=enabled_disabled ]
如果div 类enabled_disabled
且不类disabled
div.enabled_disabled:not(.disabled)
鉴于您在问题中列出的HTML,最后两个中的任何一个都适合您。
答案 1 :(得分:1)
您可以使用与该类匹配的此选择器,并避免使用另一个。
$(".enabled_disabled:not('.disabled')");
您可以从$()
.enabled_disabled:not(.disabled)
答案 2 :(得分:0)
在css中使用not()
选择器。:not pseudo-class
表示未由其参数表示的元素。
.enabled_disabled:not(.disabled){
}
更多关于