相关软件点击下载
登录的处理。因为有些网页数据需要登陆后才能提取。这里要使用ieHTTPHeaders来提取登录时的提交信息。
抓取网页
HtmlAgilityPack.HtmlDocument htmlDoc;
if (!string.IsNullOrEmpty(登录URL))
{
htmlDoc = htmlWeb.Load(登录URL, 提交的用户验证信息, 获取数据的网页URL);
}
else
{
htmlDoc = htmlWeb.Load(获取数据的网页URL);
}
if (!string.IsNullOrEmpty(登录URL))
{
htmlDoc = htmlWeb.Load(登录URL, 提交的用户验证信息, 获取数据的网页URL);
}
else
{
htmlDoc = htmlWeb.Load(获取数据的网页URL);
}
ArrayList list = new ArrayList();
list.add("//table/tr[1]/td");
list.add("//table/tr[2]/td");
//获取循环的节点的xpath,比如://table/tr
HtmlNodeCollection repeatNodes = htmlDoc.DocumentNode.SelectNodes("//table/tr");
//循环节点
foreach (HtmlNode node in repeatNodes)
{
//循环获取数据
foreach (string dataPath in list)
{
HtmlNode dataNode = node.SelectSingleNode(list);
if (dataNode != null)
{
string text = dataNode.InnerText;
}
}
}
list.add("//table/tr[1]/td");
list.add("//table/tr[2]/td");
//获取循环的节点的xpath,比如://table/tr
HtmlNodeCollection repeatNodes = htmlDoc.DocumentNode.SelectNodes("//table/tr");
//循环节点
foreach (HtmlNode node in repeatNodes)
{
//循环获取数据
foreach (string dataPath in list)
{
HtmlNode dataNode = node.SelectSingleNode(list);
if (dataNode != null)
{
string text = dataNode.InnerText;
}
}
}
如果出现乱码,调整编码集为gb2312或者是utf-8
htmlWeb.DefaultEncoding = System.Text.Encoding.GetEncoding(strEncode);