[英]Need help for parsing HTML in C#
对于个人用途,我试图解析一个小的html页面,以简单的网格显示法国足球锦标赛的结果。
var Url = "http://www.lfp.fr/mobile/ligue1/resultat.asp?code_jr_tr=J01";
WebResponse result = null;
WebRequest req = WebRequest.Create(Url);
result = req.GetResponse();
Stream ReceiveStream = result.GetResponseStream();
Encoding encode = System.Text.Encoding.GetEncoding(0);
StreamReader sr = new StreamReader(ReceiveStream, encode);
while (sr.Read() != -1)
{
Line = sr.ReadLine();
Line = Regex.Replace(Line, @"<(.|\n)*?>", " ");
Line = Line.Replace(" ", "");
Line = Line.TrimEnd();
Line = Line.TrimStart();
然后我真的不知道一个线索,要么是逐行,要么是整个流,以及如何只取回球队的名字和下一个将要得分的数字。
最后,我想将带分数的两个团队都放在一个liste或xml中,以将其与电话应用程序一起使用
如果有人有想法,将非常感谢!
看看HTML敏捷包
您可以将流放入XmlDocument中 ,从而允许通过XPath之类的查询。 或者,您可以将LINQ to XML与XDocument一起使用。
不过,它并不完美,因为HTML文件并不总是格式正确的XML(我们不知道!),但这是使用框架中已有内容的简单解决方案。
您将需要一个SgmlReader ,它可以在任何SGML文档(实际上是HTML文档)上提供类似XML的API。
您可以使用Regex.Match方法提取球队名称和得分。 检查html以查看每一行是如何建立的。 这是屏幕抓取中的常用技术。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.