在不使用正则表达式的情况下获取HTML DIV标记的数据
本文关键字:HTML DIV 数据 获取 情况下 正则表达式 | 更新日期: 2023-09-27 18:20:54
大家好,
关于C#.net,我有一个问题。我想做的是,基本上我只有一个HTML页面我想从它的DIV标签中提取数据,这是HTML:的示例
<div class="clr fleft">
<strong class="xx-large">033 111 22222</strong>
</div>
现在我想得到那些在"xx大"标签里面的数字。我需要一些帮助。
您可以使用HtmlAgilityPack
var doc = new HtmlAgilityPack.HtmlDocument();
doc.LoadHtml(htmlstring);
使用XPATH、
var data = doc.DocumentNode.SelectSingleNode("//*[@class='xx-large']").InnerText;
使用Linq、
var data = doc.DocumentNode.Descendants()
.Where(x => x.Attributes["class"] != null && x.Attributes["class"].Value == "xx-large")
.First()
.InnerText;
正如我所知,您不能仅通过c#(服务器端代码)访问它们。您必须编写一些javascript代码才能做到这一点。(您的javascript代码可能没有正则表达式)
您所需要的只是一个带有预定义解析器的库。您可以使用Beautiful Soup解析器(最初是用python编写的,可以与C#接口)来查看它是如何完成的http://ashomtwit.espace-technologies.com/4499480-BeautifulSoup_and_ASP_NET_C_.html或者您可以选择其他套餐。这些库具有预定义的正则表达式,并具有打开网页以收集信息的方法。使用这个非常简单。