我想解析网站使用AngleSharp的c#,这是很容易做静态页面,但有一个问题,我不能解析信息只有授权用户可用。我应该怎么做才能以编程方式自动进入网站并解析所有可供我使用的信息?
发布于 2018-12-10 01:14:10
根据使用的授权方案,这可能是超级简单的,也可能是超级困难/不可能的。
因此,让我们首先了解一下使用AngleSharp可以做些什么:
这里的微不足道的意思是:除了AngleSharp提供的功能之外不需要任何功能的脚本,例如,渲染树信息,高级CSSOM访问,... -或者需要非ES5兼容解析器的脚本(例如,使用ES6或一些特殊的非标准功能)。
现在,由于我不知道您遇到的授权方案或确切的问题是什么(一些代码/ MWE会很有帮助!)我将使用一个简单的单击示例。
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请注意,在本例中,登录表单的表单字段名称是userName和password -对于您的登录页面,它们可能会有所不同。还要注意,您的页面可能包含多个表单,并且选择器可能比简单的form更复杂。
哈!
https://stackoverflow.com/questions/50681670
复制相似问题