首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用AngleSharp解析页面

使用AngleSharp解析页面
EN

Stack Overflow用户
提问于 2018-06-04 21:22:17
回答 1查看 446关注 0票数 0

我想解析网站使用AngleSharp的c#,这是很容易做静态页面,但有一个问题,我不能解析信息只有授权用户可用。我应该怎么做才能以编程方式自动进入网站并解析所有可供我使用的信息?

EN

回答 1

Stack Overflow用户

发布于 2018-12-10 01:14:10

根据使用的授权方案,这可能是超级简单的,也可能是超级困难/不可能的。

因此,让我们首先了解一下使用AngleSharp可以做些什么:

  • 任何类型的请求,包括他们的操作(应请求,但也在response)
  • General cookie管理(以及他们的操作,对DOM进行course)
  • Querying并执行“简单”操作(例如,单击按钮、提交表单)之前)
  • 运行简单的JavaScript文件

这里的微不足道的意思是:除了AngleSharp提供的功能之外不需要任何功能的脚本,例如,渲染树信息,高级CSSOM访问,... -或者需要非ES5兼容解析器的脚本(例如,使用ES6或一些特殊的非标准功能)。

现在,由于我不知道您遇到的授权方案或确切的问题是什么(一些代码/ MWE会很有帮助!)我将使用一个简单的单击示例。

代码语言:javascript
复制
var context = BrowsingContext.New(Configuration.Default.WithDefaultLoader().WithCookies());
var loginPage = await context.OpenAsync("http://yourpage.com");
var loginForm = loginPage.QuerySelector<IHtmlFormElement>("form");
var profilePage = await loginForm.SubmitAsync(new { userName = "myUser", password = "password" });
// get something on profilePage

请注意,在本例中,登录表单的表单字段名称是userNamepassword -对于您的登录页面,它们可能会有所不同。还要注意,您的页面可能包含多个表单,并且选择器可能比简单的form更复杂。

哈!

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/50681670

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档