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://hxwzsj.com/article/gjpoog.html">http://hxwzsj.com/article/gjpoog.html</a> </div> </div> <div class="other"> <h3>其他资讯</h3> <ul> <li> <a href="/article/jgdggg.html">java实现多图片上传功能的方法</a> </li><li> <a href="/article/jgdgcc.html">C++中怎么防止溢出​</a> </li><li> <a href="/article/jgdgoe.html">怎么进行Windows与LinuxCentOS7)之间的文件共享</a> </li><li> <a href="/article/jgdgec.html">CentOS系统中怎么为一个网卡绑定多个IP地址</a> </li><li> <a href="/article/jgdgoj.html">Oracle11gRAC如何把物理DG变成只读库</a> </li> </ul> </div> </div> <div class="footer2"> Copyright © 2025 青羊区翔捷宏鑫字牌设计制作工作室(个体工商户) All Rights Reserved 蜀ICP备2025123194号-14 <br />友情链接: <a href="http://m.cdcxhl.cn/dingzhi/" target="_blank">定制网站制作 </a><a href="http://m.cdcxhl.com/" target="_blank">成都网站制作 </a><a href="http://chengdu.cdcxhl.cn/qiye/" target="_blank">企业网站设计 </a><a href="https://www.cdcxhl.com/shop.html" target="_blank">商城网站建设 </a><a href="http://www.wjzwz.com/" target="_blank">温江网站设计 </a><a href="http://www.cdweb.net/" target="_blank">成都网站设计 </a><a href="http://www.kswsj.com/" target="_blank">成都网站建设 </a><a href="https://www.cdcxhl.com/qiye.html" target="_blank">企业网站建设 </a><a href="http://www.cxhljz.cn/" target="_blank">成都网站制作 </a><a href="http://www.kswcd.cn/" target="_blank">成都网站设计制作公司 </a><a href="http://chengdu.cdcxhl.cn/jianshe/" target="_blank">品牌网站建设 </a><a href="http://www.36103.cn/" target="_blank">成都网站建设 </a><a href="http://chengdu.cdxwcx.cn/wangzhan/" target="_blank">公司网站建设 </a><a href="https://www.cdcxhl.com/waimao.html" target="_blank">外贸网站建设 </a><a href="http://www.cdweb.net/solve/" target="_blank">网站建设方案 </a><a href="http://chengdu.cdcxhl.cn/jianshe/" target="_blank">成都网站建设公司 </a><a href="http://www.cqcxhl.com/service/" target="_blank">品牌网站建设 </a><a href="http://www.cdxwcx.cn/bj/" target="_blank">网站制作报价 </a><a href="http://chengdu.kswsj.cn/" target="_blank">高端网站设计 </a><a href="http://m.cdcxhl.com/" target="_blank">成都网站设计 </a><a href="http://chengdu.cdcxhl.cn/qiye/" target="_blank">成都企业网站建设公司 </a><a href="http://chengdu.cdcxhl.cn/" 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=hxwzsj.com&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=hxwzsj.com&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>