Fizzler是HTML文档的W3C选择器库.Nuget提供两个版本:一个取决于HtmlAgilityPack,一个不依赖于HtmlAgilityPack.
我只能找到依赖于HtmlAgilityPack的项目的文档和示例代码.我想利用没有这种依赖关系的那个,因为我总是希望减少我的依赖关系并保持简单.
在哪里可以找到不依赖于HtmlAgilityPack的Fizzler项目的文档/示例代码?
理解Fizzler的设计,设置和依赖关系的重要一点是要意识到CSS Selectors规范本身是根据文档树中元素的绑定模式来描述的.引用的大多数示例都是HTML文档树中的元素,这是CSS选择器的副产品,它构成了CSS的核心部分,并且所有这些技术在渲染网页时汇集在一起.这是最常见的应用程序.但是,如果使用CSS选择器作为使用元素和属性(和命名空间)模型的任意文档系统的查询机制,则可以将其应用于网页域之外.在单机或基本版本Fizzler的正是这么做的.它包含通用位.然后,Fizzler.Systems.HtmlAgilityPack是一个具体库的API和HTML文档树模型之上的通用位的具体实现:HtmlAgilityPack.
这种分离使任何人都可以使用Fizzler在另一个库之上实现CSS选择器(如果另一个库变得更新/流行)或者文档树,因为可以重用CSS选择器语法分析器和不知道或关系的通用选择框架到HtmlAgilityPack.
作为Fizzler的原始作者之一,我提供了HtmlAgilityPack的具体实现,HtmlAgilityPack是.NET Framework中最流行的HTML解析器和DOM库(可能至今仍然存在).我希望社区将使用核心库为其他HTML库和文档系统提供实现.
您可以说HTML之外的CSS选择器的实用程序纯粹是学术性的,但Fizzler repo确实包含WinForms的实现,虽然是我的一个实验,但它证明了CSS选择器可以很好地用于选择表单的控件基于它们的名称(映射为ID)和属性(映射为属性).您可以想象为WinForms控件应用类似CSS的样式语言,并使用CSS选择器来定义应用于哪些控件的样式.
Fizzler的体系结构和设计是您找不到任何纯粹使用核心库的文档或示例的原因.对于在应用程序中寻求即时和实际使用的人来说,它可能过于通用.对于希望在其他库和元素树之上实现CSS选择的人来说,文档和示例最有意义.虽然这可能缺乏书面英语形式,但我希望Fizzler.Systems.HtmlAgilityPack(以及其他一些)可以作为一个简单的研究(其核心可归结为少于200行代码) ).
Fizzler.Systems.HtmlAgilityPack本身是通过使用两个标准来记录的:CSS Selectors和Selectors API.后者增加QuerySelector
和QuerySelectorAll
用于HtmlNode
从HtmlAgilityPack,就像您在浏览器中找到.
归档时间: |
|
查看次数: |
542 次 |
最近记录: |