Html敏捷包.加载和抓取网页

tha*_*sIT 30 c# web-scraping html-agility-pack

这是抓取时获取网页的最佳方式吗?

HttpWebRequest oReq = (HttpWebRequest)WebRequest.Create(url);
HttpWebResponse resp = (HttpWebResponse)oReq.GetResponse();

var doc = new HtmlAgilityPack.HtmlDocument();

doc.Load(resp.GetResponseStream());
var element = doc.GetElementbyId("//start-left");
var element2 = doc.DocumentNode.SelectSingleNode("//body");
string html = doc.DocumentNode.OuterHtml;
Run Code Online (Sandbox Code Playgroud)

我已经看到HtmlWeb().Load了一个网页.这是一个更好的替代加载和刮网页?


好的,我会试试.

HtmlDocument doc = web.Load(url);
Run Code Online (Sandbox Code Playgroud)

现在,当我得到我的doc,并没有得到如此mutch属性.没有人喜欢SelectSingleNode.我唯一可以使用的是GetElementById,但这有效但我想上课.

我需要这样做吗?

var htmlBody = doc.DocumentNode.SelectSingleNode("//body");
htmlBody.SelectSingleNode("//paging");
Run Code Online (Sandbox Code Playgroud)

Jac*_*itt 70

使用HtmlWeb更容易.

string Url = "http://something";
HtmlWeb web = new HtmlWeb();
HtmlDocument doc = web.Load(Url);
Run Code Online (Sandbox Code Playgroud)