我使用以下代码获取网页内容:
static void Main(string[] args)
{
using (var client = new WebClient())
{
var pageContent = client.DownloadString("http://www.modern-railways.com");
Console.WriteLine(pageContent);
Console.ReadLine();
}
}
这就是我得到的:
…….News: <span class='articleTitle'>Victoria Metrolink improvement begins</span></a></h1><p><a href='/view_article.asp?ID=7541&pubID=37&t=0&s=0&sO=both&p=1&i=10' class='summaryText' data-ajax='false'>Published 13 February 2014, 11:28</a></p><div class='articleContent ui-widget ui-widget-content ui-helper-clearfix ui-corner-all '….
我需要在pageContent中捕获所有“articleTitle”和已发布的日期,其中有几个。我怎样才能做到这一点?我需要一些指导。
答案 0 :(得分:1)
您可以使用正则表达式来完成挑战:
var regex = new Regex(@"<span class='articleTitle'>(.+?)</span>");
var match = regex.Match(pageContent);
var result = match.Groups[1].Value;
上面的代码将起作用,假设标签每次都以完全相同的方式构建。
foreach (Match itemMatch in regex.Matches(pageContent))
{
var articleTitle= itemMatch.Groups[1].Value;
//TODO do what you need with the articleTitle (e.g. add to a list)
}