HTML敏捷包。装载和刮网页 [英] Html Agility Pack. Load and scrape webpage

查看:183
本文介绍了HTML敏捷包。装载和刮网页的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

这是对的的方式拼抢时获得一个网页?



  HttpWebRequest的oReq =( HttpWebRequest的)WebRequest.Create(URL); 
HttpWebResponse RESP =(HttpWebResponse)oReq.GetResponse();

变种DOC =新HtmlAgilityPack.HtmlDocument();

doc.Load(resp.GetResponseStream());
VAR元= doc.GetElementbyId(//启动遗);
变种在element2 = doc.DocumentNode.SelectSingleNode(//体);
字符串的html = doc.DocumentNode.OuterHtml;



我见过 HtmlWeb()。负载得到的网页。那是一个更好的选择来加载和刮网页?






好吧,我想试试吧。

 的HTMLDocument DOC = web.Load(URL); 

现在,当我得到了我的商务部和没T获得如此mutch属性。没有人喜欢的SelectSingleNode 。唯一一个我可以使用的getElementById ,这工作,但我whant得到的一类。



我需要做的是这样的。

  VAR htmlBody = doc.DocumentNode.SelectSingleNode(//机构)?; 
htmlBody.SelectSingleNode(//分页);


解决方案

更​​容易使用HtmlWeb。

 字符串URL =HTTP://东西; 
HtmlWeb网络=新HtmlWeb();
的HTMLDocument DOC = web.Load(URL);


Is this the best way to get a webpage when scraping?

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;

I've seen HtmlWeb().Load to get a webpage. Is that a better alternative to load and the scrape the webpage?


Ok i'll try that instead.

HtmlDocument doc = web.Load(url);

Now when i got my doc and didn't get so mutch properties. No one like SelectSingleNode. The only one I can use is GetElementById, and that works but I whant to get a class.

Do I need to do it like this?

var htmlBody = doc.DocumentNode.SelectSingleNode("//body");
htmlBody.SelectSingleNode("//paging");

解决方案

Much easier to use HtmlWeb.

string Url = "http://something";
HtmlWeb web = new HtmlWeb();
HtmlDocument doc = web.Load(Url);

这篇关于HTML敏捷包。装载和刮网页的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆