我正在尝试从驻留在Intranet上的页面获取数据。 Intranet基于SharePoint。地址如下所示:http://collab.intranet.com/Pages/Default.aspx。
我正在使用HTML Agility Pack(.NET)来获取数据,我已经在外部网页而不是内部网上工作了。我可以通过浏览器访问内部网页。
编辑:问题是:如何授予对需要访问SharePoint Intranet页面的程序的访问权限?
我用来检索数据的代码(C#):
String webpage = "http://collab.intranet.com/Pages/Default.aspx";
String mainTarget = "table";
String mainAttribute = "id";
String mainId = "activeProjects";
var webGet = new HtmlWeb();
var document = webGet.Load(webpage);
var partOfWebpage = from completeWebpage in document.DocumentNode.Descendants(mainTarget)
where
completeWebpage.Attributes[mainAttribute] != null &&
completeWebpage.Attributes[mainAttribute].Value == mainId &&
completeWebpage.Attributes[mainAttribute].Value != null
select completeWebpage.InnerHtml;
答案 0 :(得分:2)
没关系,我经过一些挖掘和试验后发现了一个解决方案。错误。由于Intranet基于SharePoint,因此可以使用 WebService库并调用“SharePoint列表”。但我还发现以下代码使我能够访问SharePoint页面:
WebClient client = new WebClient();
client.Credentials = CredentialCache.DefaultCredentials;
然后我可以在客户端的帮助下将页面下载为字符串,然后通过 HTML Agility Pack 传递它以完成我想要的操作。