当前位置:首页 >> 脚本专栏

用asp.net实现 取页面中的所有链接

private void Page_Load(object sender, System.EventArgse) 
  { 
   //在此处放置用户代码以初始化页面 

   string url =https://www.jb51.net; 
   System.Net.HttpWebRequesthttpReq; 
   System.Net.HttpWebResponsehttpRes; 
   System.UrihttpURL = new Uri(url); 
   httpReq =(System.Net.HttpWebRequest)System.Net.WebRequest.Create(httpURL); 
   httpReq.Method= "GET"; 
   httpRes= (System.Net.HttpWebResponse)httpReq.GetResponse(); 
   httpReq.KeepAlive= false; 
   System.IO.StreamReadersReader = newSystem.IO.StreamReader(httpRes.GetResponseStream(),System.Text.Encoding.GetEncoding("GB2312")); 
   stringres = sReader.ReadToEnd(); 
   //以下是利用正则表达式对获取的文本流进行过滤 
   stringstrRegex = @"<a.+?a>"; 
   System.Text.RegularExpressions.Regexr; 
   System.Text.RegularExpressions.MatchCollectionm; 
   r = newSystem.Text.RegularExpressions.Regex(strRegex,System.Text.RegularExpressions.RegexOptions.IgnoreCase); 
   m =r.Matches(res); 
   Response.Write("该页共有"+m.Count + " 个超连接<br/>"); 
   for (inti = 0; i < m.Count; i++) 
   { 
    Response.Write(m[i].Value+ "<br/>"); 
   } 
  }