因此,我正在尝试抓取一个网站,并且正在使用HTML Agility Pack来尝试执行此操作。我已经在html-agility-pack和google网站上尝试了我的代码,并且似乎可以通过简单的搜索正常工作。
我的问题是代码在此代码行上返回错误(“ System.NullReferenceException:'对象引用未设置为对象的实例。'“)。
Console.WriteLine("Node Name: " + node.Name + "\n" + node.OuterHtml);
我了解这是由于var节点返回Null而发生的,但是为什么这是在此网站而不是其他网站上发生的?
//var html = @"http://html-agility-pack.net/";
var html = @"https://www./";
//var html = @"https://www.google.com/";
HtmlWeb web = new HtmlWeb();
HtmlDocument htmlDoc = web.Load(html);
if (web.StatusCode == HttpStatusCode.OK)
{
Console.WriteLine("CONNECTION OK");
var node = htmlDoc.DocumentNode.SelectSingleNode("//head/title");
Console.WriteLine("Node Name: " + node.Name + "\n" + node.OuterHtml);
Console.ReadLine();
}else
{
Console.WriteLine("No Connection to website");
Console.ReadLine();
}