C#.Net基于正则表达式抓取百度百家文章列表的方法示例

本文实例讲述了C#.Net基于正则表达式抓取百度百家文章列表的方法。分享给大家供大家参考,具体如下:

创新互联长期为近千家客户提供的网站建设服务,团队从业经验10年,关注不同地域、不同群体,并针对不同对象提供差异化的产品和服务;打造开放共赢平台,与合作伙伴共同营造健康的互联网生态环境。为让胡路企业提供专业的成都网站建设、成都网站制作,让胡路网站改版等技术服务。拥有十年丰富建站经验和众多成功案例,为您定制开发。

工作之余,学习了一下正则表达式,鉴于实践是检验真理的唯一标准,于是便写了一个利用正则表达式抓取百度百家文章的例子,具体过程请看下面源码:

一、获取百度百家网页内容

public List GetUrl()
{
  try
  {
    string url = "http://baijia.baidu.com/";
    WebRequest webRequest = WebRequest.Create(url);
    WebResponse webResponse = webRequest.GetResponse();
    StreamReader reader = new StreamReader(webResponse.GetResponseStream());
    string result = reader.ReadToEnd();
    reader.Close();
    webResponse.Close();
    return AnalysisHtml(result);
  }
  catch (Exception ex)
  {
    throw ex;
  }
}

二、通过正则表达式筛选

public List AnalysisHtml(string htmlContent)
{
  List list = new List();
  string strPattern = "

(?[^<]+)</a></h4>.*\\s*<p\\s*class=\"feeds-item-text\">(?<Abstract>[^<]+)<a\\s*href=\"(?<Url>.*)\"\\s*target=\"_blank\"\\s*class=\"feeds-item-more\"\\s*mon=\".*\\s*\">.*\\s*</a></p>"; Regex regex = new Regex(strPattern, RegexOptions.IgnoreCase | RegexOptions.Multiline | RegexOptions.CultureInvariant); if (regex.IsMatch(htmlContent)) { MatchCollection matchCollection = regex.Matches(htmlContent); foreach (Match match in matchCollection) { string[] str = new string[3]; str[0] = match.Groups[1].Value;//获取到的是列表数据的标题 str[1] = match.Groups[2].Value;//获取到的是内容 str[2] = match.Groups[3].Value;//获取到的是链接到的地址 list.Add(str); } } return list; } </pre></div><p><strong>附:</strong>完整实例代码点击此处<strong>本站下载</strong>。</p><p><strong>PS:这里再为大家提供2款非常方便的正则表达式工具供大家参考使用:</strong></p><p><strong>JavaScript正则表达式在线测试工具:<br /></strong>http://tools.jb51.net/regex/javascript</p><p><strong>正则表达式在线生成工具:<br /></strong>http://tools.jb51.net/regex/create_reg</p><p>更多关于C#相关内容感兴趣的读者可查看本站专题:《C#正则表达式用法总结》、《C#编码操作技巧总结》、《C#常见控件用法教程》、《WinForm控件用法总结》、《C#数据结构与算法教程》、《C#面向对象程序设计入门教程》及《C#程序设计之线程使用技巧总结》</p><p>希望本文所述对大家C#程序设计有所帮助。</p> <br> 网页名称:C#.Net基于正则表达式抓取百度百家文章列表的方法示例 <br> 文章起源:<a href="http://csruizhi.cn/article/gjpoog.html">http://csruizhi.cn/article/gjpoog.html</a> </div> </div> <div class="other"> <h3>其他资讯</h3> <ul> <li> <a href="/article/degishh.html">无线接收路由器 无线接收路由器怎么设置</a> </li><li> <a href="/article/degiegp.html">java点名程序代码 java代码点啥意思</a> </li><li> <a href="/article/degiecj.html">java文字间隔代码 java 中文字符串长度</a> </li><li> <a href="/article/degieii.html">ssm部署到阿里云服务器 ssm项目部署到阿里云</a> </li><li> <a href="/article/degiejo.html">关于r语言中调用的c函数 r语言中的c函数是啥意思</a> </li> </ul> </div> </div> <div class="footer2"> Copyright © 2007-2024 成都优众联杰科技有限公司 All Rights Reserved 蜀ICP备2024116266号 <br />友情链接: <a href="http://chengdu.cdcxhl.com/" target="_blank">成都营销网站制作 </a><a href="http://www.lzwzjz.cn/" target="_blank">泸州网站建设 </a><a href="http://www.cdkjz.cn/" target="_blank">成都网站建设 </a><a href="http://www.cdkjz.cn/" target="_blank">网站建设 </a><a href="http://m.cdcxhl.cn/dingzhi/" target="_blank">定制网站设计 </a><a href="http://m.cdcxhl.com/" target="_blank">成都网站制作 </a><a href="https://www.cdxwcx.com/" target="_blank">成都网站设计公司 </a><a href="http://chengdu.cdcxhl.cn/seo/" target="_blank">营销网站建设 </a><a href="http://www.kswcd.cn/" target="_blank">专业网站建设 </a><a href="http://www.kswsj.com/" target="_blank">成都网站建设 </a><a href="https://www.cdcxhl.com/mobile.html" target="_blank">手机网站制作设计 </a><a href="http://www.kswcd.com/" target="_blank">成都企业网站设计 </a><a href="http://www.cdxwcx.cn/" target="_blank">成都网站制作 </a><a href="http://www.cdxtjz.com/" target="_blank">网站制作 </a><a href="http://www.cdxwcx.cn/" target="_blank">成都网站设计 </a><a href="https://www.cdxwcx.com/" target="_blank">成都网站设计 </a><a href="http://chengdu.cdxwcx.cn/wangzhan/" target="_blank">企业网站设计 </a><a href="http://www.cxhljz.com/" target="_blank">网站设计制作 </a><a href="http://m.cdcxhl.cn/dingzhi/" target="_blank">成都定制网站建设 </a><a href="http://www.cxjianzhan.cn/" target="_blank">成都网站设计 </a><a href="http://www.cxjianzhan.cn/fwxm/pinpai.html" target="_blank">成都品牌网站设计 </a><a href="http://www.cdkjz.cn/fangan/education/" target="_blank">教育网站设计方案 </a></div> </body> </html> <script src="/Public/Home/js/wow.min.js"></script> <script> if (!(/msie [6|7|8|9]/i.test(navigator.userAgent))) { new WOW().init(); }; </script> <div class="sidebar"> <ul> <li><a href="http://wpa.qq.com/msgrd?v=3&uin=244261566&site=www.csruizhi.cn&menu=yes" target="_blank"><img src="/Public/Home/images/right_qq.png" /></a></li> <li><a href="http://wpa.qq.com/msgrd?v=3&uin=1683211881&site=www.csruizhi.cn&menu=yes" target="_blank"><img src="/Public/Home/images/qq.png" /></a></li> <li class="tel"><a href="tel:028-86922220"><img src="/Public/Home/images/right_tel.png" /></a></li> <div class="wx"> <span class="weixin"><img src="/Public/Home/images/weixin.jpg"><br> 微信扫一扫在线咨询</span> </div> <li><a class="fx" href="#hero"><img src="/Public/Home/images/right_up.png" /></a></li> </ul> </div> <script type="text/javascript"> $(function () { $('.sidebar .fx').click(function () { $('html,body').animate({ scrollTop: '0px' }, 800); }); }); </script> <script type="text/javascript"> $(document).ready(function () { $("#fancybox-manual-b").click(function () { $.fancybox.open({ href: 'map.html', type: 'iframe', padding: 5 }); }) }); </script> <script> $(".con img").each(function(){ var src = $(this).attr("src"); //获取图片地址 var str=new RegExp("http"); var result=str.test(src); if(result==false){ var url = "https://www.cdcxhl.com"+src; //绝对路径 $(this).attr("src",url); } }); window.onload=function(){ document.oncontextmenu=function(){ return false; } } </script>