分类目录

链接

2011 年 12 月
 1234
567891011
12131415161718
19202122232425
262728293031  

近期文章

热门标签

新人福利,免费薅羊毛

现在位置:    首页 > .NET > 正文
解析WEB中所有URL
.NET 暂无评论 阅读(1,922)
  1. static void Main(string[] args)
  2.              {
  3.  
  4.                  HttpWebHelper httpWebHelper = new HttpWebHelper();
  5.                  string webCodeStr = "utf-8";
  6.                  string referer = @"http://www.cnblogs.com/";
  7.                  Encoding webcode = Encoding.GetEncoding(webCodeStr);
  8.                  string htmlText = httpWebHelper.SimpleDoPostWrapper(referer, "get", webcode, null, referer);
  9.                  string[] urls = GetHtmlHrefUrlList(htmlText);
  10.              }
  11.  
  12.      public static string[] GetHtmlHrefUrlList(string sHtmlText)
  13.      {
  14.          Regex regHref = new Regex(@"(?is)<a(?:(?!href=).)*href=(['""]?)(?<url>[^""\s>]*)\1[^>]*>(?<text>(?:(?!</?a\b).)*)</a>", RegexOptions.IgnoreCase);
  15.          MatchCollection matches = regHref.Matches(sHtmlText);
  16.          int i = 0;
  17.          string[] sUrlList = new string[matches.Count];
  18.          foreach (Match match in matches)
  19.              sUrlList[i++] = match.Groups["url"].Value;
  20.          return sUrlList;
  21.      }

 

这样就可以了,HttpWebHelper是我封装了HttpWebRequest的一个类,取到内容以后用这个正则就可以返回所有的url

============ 欢迎各位老板打赏~ ===========

本文版权归Bruce's Blog所有,转载引用请完整注明以下信息:
本文作者:Bruce
本文地址:解析WEB中所有URL | Bruce's Blog

发表评论

留言无头像?