我想从远程HTML页面加载一个标签的值。我已经通过加载整个页面并使用正则表达式来完成此操作。我找到了期望的结果,但是这种方法非常慢,我希望它快速加载标签值而不是整个网页。有什么建议么?需要帮助从C#中的HTML页面提取标签#
这是我在做什么的那一刻:
using (var client = new WebClient())
{
string result = c client.DownloadString("http://web.archive.org/http://profiles.yahoo.com/italy_");
var regex = new Regex(@"\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*",
RegexOptions.Compiled);
var s = result;
foreach (Match email in regex.Matches(s))
{
// Console.WriteLine(email.Value);
label2.Text = email.Value;
}
}
正如Nathan所说,确实必须加载整个页面,除非您可以创建一个新的服务器端页面,通过自定义页面仅返回所需的信息。 – Maverik 2011-05-19 08:29:00
如果你正在为多个页面执行此操作,那么编译一次正则表达式并重用它,而不是处理每个页面似乎是一个明显的优化... – forsvarir 2011-05-19 08:30:39