HtmlDocument doc = new HtmlDocument();//节点 细节
doc.LoadHtml(content);
HtmlNode hnDetail = doc.GetElementbyId("searchResults");//找到包含列表的框架
if (hnDetail != null)
{
content = hnDetail.InnerHtml;
}
这是我的代码。这个里面 hnDetail 得到的只有div 标签, hnDetail.InnerHtml 是空的,怎么解,求大神啊
6 个解决方案
#1
content 的内容
*****************************************************************************
签名档: http://feiyun0112.cnblogs.com/
*****************************************************************************
签名档: http://feiyun0112.cnblogs.com/
#2
content里面是从网页获取回来的内容,html页面,你的网址我瞧瞧,谢谢了啊
#3
可以用正则,或者使用一些第三方的库例如HtmlAgilityPack,会比正则方便很多的
#4
不会正则,现学也赶不及,表示很难过,可以不可以帮忙写一句,
#5
解析别人网站上的页面内容,扒取别人网站上的所有链接?
foreach (
Match m in
Regex.Matches(content,
@"(?is)<li[^>]*?class=(['""]?)hot_list_item\1[^>]*?>\s*?<a[^>]*?href=(['""]?)(?<href>[^'""]*?)\2[^>]*?>(?<text>[^<>]*?)</a>[\s\S]*?</li>")
)
{
sHot += "{\"text\":\"" + m.Groups["text"].Value + "\",\"url\":\"" + m.Groups["href"].Value + "\"},";
}
这个写法的意思是取所有 class="hot_list_item" 的li 里面 所有a标签的href链接和 a标签包含的值。
<li class="hot_list_item" ><a href="a.html">测试</a></li>
这一段解析完,
sHot={“text”:"测试","url":"a.html"}
foreach (
Match m in
Regex.Matches(content,
@"(?is)<li[^>]*?class=(['""]?)hot_list_item\1[^>]*?>\s*?<a[^>]*?href=(['""]?)(?<href>[^'""]*?)\2[^>]*?>(?<text>[^<>]*?)</a>[\s\S]*?</li>")
)
{
sHot += "{\"text\":\"" + m.Groups["text"].Value + "\",\"url\":\"" + m.Groups["href"].Value + "\"},";
}
这个写法的意思是取所有 class="hot_list_item" 的li 里面 所有a标签的href链接和 a标签包含的值。
<li class="hot_list_item" ><a href="a.html">测试</a></li>
这一段解析完,
sHot={“text”:"测试","url":"a.html"}
#6
谢谢楼上的建议,3Qs,要好好学习正则啊
#1
content 的内容
*****************************************************************************
签名档: http://feiyun0112.cnblogs.com/
*****************************************************************************
签名档: http://feiyun0112.cnblogs.com/
#2
content里面是从网页获取回来的内容,html页面,你的网址我瞧瞧,谢谢了啊
#3
可以用正则,或者使用一些第三方的库例如HtmlAgilityPack,会比正则方便很多的
#4
不会正则,现学也赶不及,表示很难过,可以不可以帮忙写一句,
#5
解析别人网站上的页面内容,扒取别人网站上的所有链接?
foreach (
Match m in
Regex.Matches(content,
@"(?is)<li[^>]*?class=(['""]?)hot_list_item\1[^>]*?>\s*?<a[^>]*?href=(['""]?)(?<href>[^'""]*?)\2[^>]*?>(?<text>[^<>]*?)</a>[\s\S]*?</li>")
)
{
sHot += "{\"text\":\"" + m.Groups["text"].Value + "\",\"url\":\"" + m.Groups["href"].Value + "\"},";
}
这个写法的意思是取所有 class="hot_list_item" 的li 里面 所有a标签的href链接和 a标签包含的值。
<li class="hot_list_item" ><a href="a.html">测试</a></li>
这一段解析完,
sHot={“text”:"测试","url":"a.html"}
foreach (
Match m in
Regex.Matches(content,
@"(?is)<li[^>]*?class=(['""]?)hot_list_item\1[^>]*?>\s*?<a[^>]*?href=(['""]?)(?<href>[^'""]*?)\2[^>]*?>(?<text>[^<>]*?)</a>[\s\S]*?</li>")
)
{
sHot += "{\"text\":\"" + m.Groups["text"].Value + "\",\"url\":\"" + m.Groups["href"].Value + "\"},";
}
这个写法的意思是取所有 class="hot_list_item" 的li 里面 所有a标签的href链接和 a标签包含的值。
<li class="hot_list_item" ><a href="a.html">测试</a></li>
这一段解析完,
sHot={“text”:"测试","url":"a.html"}
#6
谢谢楼上的建议,3Qs,要好好学习正则啊