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

时间:2021-08-12  来源:正则表达式  阅读:

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

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

publicList GetUrl()
{
  try
  {
    stringurl ="http://baijia.baidu.com/";
    WebRequest webRequest = WebRequest.Create(url);
    WebResponse webResponse = webRequest.GetResponse();
    StreamReader reader =newStreamReader(webResponse.GetResponseStream());
    stringresult = reader.ReadToEnd();
    reader.Close();
    webResponse.Close();
    returnAnalysisHtml(result);
  }
  catch(Exception ex)
  {
    throwex;
  }
}

二、通过正则表达式筛选

publicList AnalysisHtml(stringhtmlContent)
{
  List list =newList();
  stringstrPattern ="

(?[^<]+)</h3>.*\\s*<p\\s*class=\"feeds-item-text\">(?[^<]+).*)\"\\s*target=\"_blank\"\\s*class=\"feeds-item-more\"\\s*mon=\".*\\s*\">.*\\s*</p>"; Regex regex =newRegex(strPattern, RegexOptions.IgnoreCase | RegexOptions.Multiline | RegexOptions.CultureInvariant); if(regex.IsMatch(htmlContent)) { MatchCollection matchCollection = regex.Matches(htmlContent); foreach(Match matchinmatchCollection) { string[] str =newstring[3]; str[0] = match.Groups[1].Value;//获取到的是列表数据的标题 str[1] = match.Groups[2].Value;//获取到的是内容 str[2] = match.Groups[3].Value;//获取到的是链接到的地址 list.Add(str); } } returnlist; }</pre><p><a style="color: #444;" title="[测速]C#.Net基于正则表达式抓取百度百家文章列表的方法示例" href="http://m.bbyears.com/aspjiaocheng/135501.html">[测速]C#.Net基于正则表达式抓取百度百家文章列表的方法示例</a></p> <p class="wangzhi">http://m.bbyears.com/aspjiaocheng/135501.html</p> 推荐访问:<a href="/k/cangbaoge/">藏宝阁</a> <a href="/k/cainiaojiaocheng/">菜鸟教程</a> <a href="/k/chuangketie/">创客贴</a> <a href="/k/caoliaoerweima/">草料二维码</a> <a href="/k/cctv5/">cctv5</a> <a href="/k/csdn/">csdn</a> <a href="/k/cnki/">cnki</a> <a href="/k/colg/">colg</a> <script type="text/javascript"> s2(); </script> </div> <div class="art-prenext"> <p>上一篇:<a href="http://m.bbyears.com/aspjiaocheng/135475.html" title="[相对论通俗解释]通俗解释JavaScript正则表达式快速记忆">[相对论通俗解释]通俗解释JavaScript正则表达式快速记忆</a></p> <p>下一篇:<a href="http://m.bbyears.com/aspjiaocheng/135522.html" title="正则表达式匹配字符串|正则表达式匹配代码">正则表达式匹配字符串|正则表达式匹配代码</a></p> </div> </article> <script type="text/javascript"> s3(); </script> <div class="main-tab"> <a class="on" href="javascript:;">相关阅读</a> <a href="javascript:;"> 猜你喜欢</a> </div> <div class="tab-box"> <ul class="main-new on clearfix"> <li><a href="http://m.bbyears.com/bangongshuma/92980.html" title="【三国志13威力加强版闪退】三国志13正版闪退问题解析">【三国志13威力加强版闪退】三国志13正版闪退问题解析</a></li> <li><a href="http://m.bbyears.com/news/92979.html" title="【辐射4血肉横飞】辐射4血肉横飞强力Perk伤害解析">【辐射4血肉横飞】辐射4血肉横飞强力Perk伤害解析</a></li> <li><a href="http://m.bbyears.com/news/92978.html" title="[古墓丽影崛起劳拉露胸]古墓丽影:崛起劳拉服装官方图文分享">[古墓丽影崛起劳拉露胸]古墓丽影:崛起劳拉服装官方图文分享</a></li> <li><a href="http://m.bbyears.com/kuzhan/92977.html" title="三国志13怎么设置中文版_三国志13怎么设置中文 中文设置方法">三国志13怎么设置中文版_三国志13怎么设置中文 中文设置方法</a></li> <li><a href="http://m.bbyears.com/wangyetexiao/92976.html" title="三国志13启动弹出两个窗口|三国志13启动环境设定卡死解决方法分享">三国志13启动弹出两个窗口|三国志13启动环境设定卡死解决方法分享</a></li> <li><a href="http://m.bbyears.com/news/92975.html" title="辐射4狗肉装备怎么获得方法_辐射4狗肉装备怎么获得 狗肉装备获得方法">辐射4狗肉装备怎么获得方法_辐射4狗肉装备怎么获得 狗肉装备获得方法</a></li> <li><a href="http://m.bbyears.com/banzhurengongzuo/92974.html" title="【古墓丽影崛起劳拉露胸】古墓丽影:崛起劳拉原型及形象制作细节分享">【古墓丽影崛起劳拉露胸】古墓丽影:崛起劳拉原型及形象制作细节分享</a></li> <li><a href="http://m.bbyears.com/caozuoxitong/92973.html" title="【三国志13输入中文名字】三国志13怎么输入中文名 输入中文名方法分享">【三国志13输入中文名字】三国志13怎么输入中文名 输入中文名方法分享</a></li> <li><a href="http://m.bbyears.com/wangyezhizuo/92972.html" title="[angularjs api文档]angularjs 做修改页面遇到的问题解决办法">[angularjs api文档]angularjs 做修改页面遇到的问题解决办法</a></li> <li><a href="http://m.bbyears.com/news/92971.html" title="【辐射4城堡军械库】辐射4城堡海边支线任务解析分享">【辐射4城堡军械库】辐射4城堡海边支线任务解析分享</a></li> </ul> <ul class="main-new clearfix"> <li><a href="http://m.bbyears.com/jiaocheng/92970.html" title="zblog php_ZBLOG PHP无插件调用本周、本月、本年热门文章实例">zblog php_ZBLOG PHP无插件调用本周、本月、本年热门文章实例</a></li> <li><a href="http://m.bbyears.com/news/92969.html" title="[三国志汉末霸业武将数据]三国志13上古武将数据分享">[三国志汉末霸业武将数据]三国志13上古武将数据分享</a></li> <li><a href="http://m.bbyears.com/jiaocheng/92968.html" title="[少年三国志应用宝版]三国志13应用程序出现0xc000007b解决方法分享">[少年三国志应用宝版]三国志13应用程序出现0xc000007b解决方法分享</a></li> <li><a href="http://m.bbyears.com/wangyezhizuo/92967.html" title="angularjs中下拉框selected|angularjs中下拉框select option默认值">angularjs中下拉框selected|angularjs中下拉框select option默认值</a></li> <li><a href="http://m.bbyears.com/wangyezhizuo/92966.html" title="被辐射的初期症状|辐射4初期快速升级技巧分享">被辐射的初期症状|辐射4初期快速升级技巧分享</a></li> <li><a href="http://m.bbyears.com/bangongshuma/92965.html" title="三国志13怎么玩啊|三国志13怎么退款 Steam退款攻略">三国志13怎么玩啊|三国志13怎么退款 Steam退款攻略</a></li> <li><a href="http://m.bbyears.com/jiaocheng/92964.html" title="[wdcp面板]WDCP面板之VPS和网站安全配置教程详解">[wdcp面板]WDCP面板之VPS和网站安全配置教程详解</a></li> <li><a href="http://m.bbyears.com/bangongshuma/92963.html" title="三国志13不能存档怎么用|三国志13不能存档怎么办 不能存档解决办法">三国志13不能存档怎么用|三国志13不能存档怎么办 不能存档解决办法</a></li> <li><a href="http://m.bbyears.com/jiaocheng/92962.html" title="swift 5_Swift HTTP网络操作库SwiftHTTP使用详解1(配置,及数据请求)">swift 5_Swift HTTP网络操作库SwiftHTTP使用详解1(配置,及数据请求)</a></li> <li><a href="http://m.bbyears.com/news/92961.html" title="[辐射4水厂怎么建]辐射4水厂怎么防御 水厂防御建造分享">[辐射4水厂怎么建]辐射4水厂怎么防御 水厂防御建造分享</a></li> </ul> </div> <script type="text/javascript"> s4(); </script> <div class="main-tab"> <a class="on" href="javascript:;">本类排行</a> <a href="javascript:;">本类最新</a> </div> <div class="tab-box"> <ul class="main-hot on clearfix"> <li> <code class="c1">1</code> <a href="http://m.bbyears.com/aspjiaocheng/37486.html" title="[js手机号码正则表达式]手机号码正则表达式详解">[js手机号码正则表达式]手机号码正则表达式详解</a> </li> <li> <code class="c2">2</code> <a href="http://m.bbyears.com/aspjiaocheng/69572.html" title="nginx 配置|Nginx url rewrite 规则参数与实例介绍">nginx 配置|Nginx url rewrite 规则参数与实例介绍</a> </li> <li> <code class="c3">3</code> <a href="http://m.bbyears.com/aspjiaocheng/53254.html" title="[mysql中replaceregexp正则表达式]mysql中replace、regexp正则表达式替换用法">[mysql中replaceregexp正则表达式]mysql中replace、regexp正则表达式替换用法</a> </li> <li> <code class="c4">4</code> <a href="http://m.bbyears.com/aspjiaocheng/36372.html" title="【日期格式正则表达式】日期格式正则表达式javascript代码">【日期格式正则表达式】日期格式正则表达式javascript代码</a> </li> <li> <code class="c5">5</code> <a href="http://m.bbyears.com/aspjiaocheng/27683.html" title="正则表达式匹配中文|正则表达式验证中文代码">正则表达式匹配中文|正则表达式验证中文代码</a> </li> <li> <code class="c6">6</code> <a href="http://m.bbyears.com/aspjiaocheng/29251.html" title="csrf-token_C#正则表达式基础">csrf-token_C#正则表达式基础</a> </li> <li> <code class="c7">7</code> <a href="http://m.bbyears.com/aspjiaocheng/27680.html" title="【js正则表达式验证】js验证数字单双精度函数">【js正则表达式验证】js验证数字单双精度函数</a> </li> <li> <code class="c8">8</code> <a href="http://m.bbyears.com/aspjiaocheng/3530.html" title="[正则表达式语法]正则表达式简介(微软)--8.特殊字符">[正则表达式语法]正则表达式简介(微软)--8.特殊字符</a> </li> <li> <code class="c9">9</code> <a href="http://m.bbyears.com/aspjiaocheng/40988.html" title="phpstudy|php ipv6正则表达式程序代码">phpstudy|php ipv6正则表达式程序代码</a> </li> <li> <code class="c10">10</code> <a href="http://m.bbyears.com/aspjiaocheng/23552.html" title="javascript学习指南_javascript 密码验证程序">javascript学习指南_javascript 密码验证程序</a> </li> </ul> <ul class="main-new clearfix"> <li><a href="http://m.bbyears.com/wangyezhizuo/92960.html" title="【三国志13 单挑】三国志13单挑怎么玩 单挑玩法解析">【三国志13 单挑】三国志13单挑怎么玩 单挑玩法解析</a></li> <li><a href="http://m.bbyears.com/news/92959.html" title="[如龙极遥好感度有什么用]如龙:极瑶瑶好感度怎么提升 瑶瑶好感提升方法">[如龙极遥好感度有什么用]如龙:极瑶瑶好感度怎么提升 瑶瑶好感提升方法</a></li> <li><a href="http://m.bbyears.com/jiaocheng/92958.html" title="解决问题_解决laravel报错npm install的问题">解决问题_解决laravel报错npm install的问题</a></li> <li><a href="http://m.bbyears.com/kuzhan/92957.html" title="全境封锁2卡顿掉帧|全境封锁卡顿掉帧如何解决">全境封锁2卡顿掉帧|全境封锁卡顿掉帧如何解决</a></li> <li><a href="http://m.bbyears.com/bangongshuma/92956.html" title="[win7电脑的ip地址怎么查看ip]win7电脑的IP地址怎么查看">[win7电脑的ip地址怎么查看ip]win7电脑的IP地址怎么查看</a></li> <li><a href="http://m.bbyears.com/kuzhan/92955.html" title="[三国志13怎么玩啊]三国志13怎么改字体 自定义字体方法">[三国志13怎么玩啊]三国志13怎么改字体 自定义字体方法</a></li> <li><a href="http://m.bbyears.com/asp/92954.html" title="三国志汉末霸业修改器|三国志13全版本修改器使用方法及下载地址分享">三国志汉末霸业修改器|三国志13全版本修改器使用方法及下载地址分享</a></li> <li><a href="http://m.bbyears.com/jiaocheng/92953.html" title="mac使用brew安装nginx php-fpm mysql_mac使用brew安装nginx+php-fpm+mysql环境">mac使用brew安装nginx php-fpm mysql_mac使用brew安装nginx+php-fpm+mysql环境</a></li> <li><a href="http://m.bbyears.com/bangongshuma/92952.html" title="qq音乐2016手机旧版本|2016新版手机QQ更改备注名称方法">qq音乐2016手机旧版本|2016新版手机QQ更改备注名称方法</a></li> <li><a href="http://m.bbyears.com/jiaocheng/92951.html" title="[乐高复仇者联盟4]解决乐高复仇者联盟应用程序无法正常启动提示0xc000007b问题">[乐高复仇者联盟4]解决乐高复仇者联盟应用程序无法正常启动提示0xc000007b问题</a></li> </ul> </div> </div> <div class="sidetop"> <a id="backtop" href="javascript:;"></a> </div> <script language="JavaScript" src="http://www.bbyears.com/api.php?op=count&id=135501&modelid=1"></script> <footer> <p><a href="http://m.bbyears.com" title="程序开发教程网" target="_blank">程序开发教程网</a></p> <p><a href="/" title="程序开发教程网">m.bbyears.com</a>All rights reserved. <script type="text/javascript">tj();</script></p> </footer> <script type="text/javascript"> s5(); </script> <script src="/statics/js/js_yxfw/jquery.min.js"></script> <script src="/statics/js/js_yxfw/mobile.js"></script> </body> </html>