C# 使用AngleSharp解析CSS

C# 使用AngleSharp解析CSS,c#,html,css,anglesharp,C#,Html,Css,Anglesharp,我试图用AngleSharp解析HTML网页及其CSS。不幸的是,我只找到了一些被贬低的例子,我正在努力找到一个最新的实现 目前,我正在尝试: var config = Configuration.Default.WithDefaultLoader(new LoaderOptions { IsResourceLoadingEnabled = true }); var context = BrowsingContext.New(config); var address = "www.f

我试图用AngleSharp解析HTML网页及其CSS。不幸的是,我只找到了一些被贬低的例子,我正在努力找到一个最新的实现

目前,我正在尝试:

  var config = Configuration.Default.WithDefaultLoader(new LoaderOptions { IsResourceLoadingEnabled = true });
  var context = BrowsingContext.New(config);
  var address = "www.foo.com"
  var document = await context.OpenAsync(address);
  var styleSheets = document.styleSheets;
当我尝试访问样式表时,它总是返回一个空列表。使用AngleSharp解析CSS的正确方法是什么?也许可以在文档中包含一个示例


问候

感谢您提出这个问题,并为一些仍在流传的过时文档感到抱歉

AngleSharp不附带CSS;相反,AngleSharp可以通过其他库的功能进行扩展。其中一个库是AngleSharp.Css

顾名思义,这个库提供了CSS功能

假设您通过NuGet同时安装了(AngleSharp和AngleSharp.Css),您可以执行以下操作:

  var config = Configuration.Default.WithDefaultLoader(new LoaderOptions { IsResourceLoadingEnabled = true }).WithCss();
  var context = BrowsingContext.New(config);
  var address = "http://www.example.com"; // any reason for dropping the protocol?
  var document = await context.OpenAsync(address);
  var sheet = document.QuerySelector<IHtmlLinkElement>("link[rel=stylesheet]")?.Sheet;

希望有帮助

感谢您提出这个问题,并为一些过时的文档感到抱歉,这些文档仍在流传

AngleSharp不附带CSS;相反,AngleSharp可以通过其他库的功能进行扩展。其中一个库是AngleSharp.Css

顾名思义,这个库提供了CSS功能

假设您通过NuGet同时安装了(AngleSharp和AngleSharp.Css),您可以执行以下操作:

  var config = Configuration.Default.WithDefaultLoader(new LoaderOptions { IsResourceLoadingEnabled = true }).WithCss();
  var context = BrowsingContext.New(config);
  var address = "http://www.example.com"; // any reason for dropping the protocol?
  var document = await context.OpenAsync(address);
  var sheet = document.QuerySelector<IHtmlLinkElement>("link[rel=stylesheet]")?.Sheet;

希望有帮助

是的,那会让我开始的!非常感谢@FlorianRappl你能看一下这个问题吗?“是的,这将让我开始!非常感谢@FlorianRappl你能看看这个问题吗?