在网页上查找一段文本,知道包含此文本的元素的名称

时间:2014-12-11 12:27:43

标签: c# .net web-scraping webpage elements

所以有一个动态的网页,我想要的只是在这个页面上找到一段文字,这段文字,在该网页的特定元素下面,我怎么能用c#做到这一点? / p>

因此,澄清网页通常也包含javascript代码。 10bet网站在某种程度上非常类似于网页,所以例如去那里:

1)http://www.10bet.co.uk/sports/soccer/england_premier_league/

2)然后选择任意匹配并点击右侧的蓝色数字(例如:+80)

3)然后找到任何赌注,并尝试检查该赌注的一个元素,我想记住这个系数和

这就是我想要使用c#

的地方

任何帮助都将受到高度赞赏。

2 个答案:

答案 0 :(得分:1)

好的,

您提供的页面使用ajax加载内容(匹配)。

查找此数据源(使用chrome dev工具&检查网络选项卡)。

看起来它正在向http://www.10bet.co.uk/pagemethods.aspx/UpdateEvents

发送帖子请求

以类似的方式下载数据 -

using (WebClient webClient = new WebClient())
{       
     var response = webClient.DownloadData(url);
     return Encoding.UTF8.GetString(response);
}

如果你正在解析html,我推荐使用HtmlAgilityPack。

该页面上有很多ajax,因此您需要将其分解为小任务和&从那里开始。

答案 1 :(得分:0)

最重要的是,一个网站只不过是您浏览器不同解释的纯文本。您所要做的就是在C#代码中启动一个webclient并请求该网站。然后可以将其保存为您可以查询的字符串。

另一种方法是将网站定义为XML文档。再次使用Webclient请求网站,然后将其解析为XMLdocument对象。然后,您可以查询欲望XML标签/"元素名称"

这里有一些有用的链接

http://msdn.microsoft.com/en-us/library/system.net.webclient%28v=vs.110%29.aspx

http://msdn.microsoft.com/en-us/library/system.xml.xmldocument.loadxml%28v=vs.110%29.aspx