AngleSharp 自带的HttpRequest参数设置

Posted wxb8

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了AngleSharp 自带的HttpRequest参数设置相关的知识,希望对你有一定的参考价值。

AngleSharp自带一个获取网址源码的api,可以方便的从web取得html

var config = Configuration.Default.WithDefaultLoader().With(requester);            
var document = await BrowsingContext.New(config).OpenAsync("https://www.cnblogs.com");
var cellSelector = "#editor_pick_lnk";
var top = document.QuerySelectorAll(cellSelector).FirstOrDefault().TextContent;
Console.WriteLine(top);

如果目标站需要特定的头的话,就需要设置一些头参数了,示例代码如下

var requester = new DefaultHttpRequester("Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (Khtml, like Gecko) Chrome/69.0.3497.100 Safari/537.36");
requester.Headers.Add("accept", "text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8");
requester.Headers.Add("Test","test8888888888");

var config = Configuration.Default.WithDefaultLoader().With(requester);            
var document = await BrowsingContext.New(config).OpenAsync("https://www.cnblogs.com");
var cellSelector = "#editor_pick_lnk";
var top = document.QuerySelectorAll(cellSelector).FirstOrDefault().TextContent;
Console.WriteLine(top);

效果

技术图片

 

当然,这只是针对一般的需求,如果有更高的需求,还是自己构建http请求,结果传给AngleSharp

 

以上是关于AngleSharp 自带的HttpRequest参数设置的主要内容,如果未能解决你的问题,请参考以下文章

用AngleSharp & LINQPad抓取分析博客园排行榜

Anglesharp - 如何从 Yelp 网站获得评分和评论?

AngleSharp 的Dom 选择器

如何在 AngleSharp 项目对象中获取链接的标题?

PuppeteerSharp+AngleSharp的爬虫实战之汽车之家数据抓取

AngleSharp Html Parser 线程安全吗?