下面的方法获取页面中表格数据,每个页面不相同,获取的方式(主要是正则表达式)不一样,只是提供方法参考。大神勿喷,刚使用了,就记下来了。
其中数据怎么存,主要就看着怎么使用了。只是方便记录就都放在list集合中了。
 public List<List<string>> DataSearch(string Url)
{
List<string> listR = null;
List<List<string>> list = new List<List<string>>(); WebRequest request = WebRequest.Create(Url); //请求url
WebResponse response = request.GetResponse(); //获取url数据
StreamReader reader = null;
reader = new StreamReader(response.GetResponseStream(), Encoding.GetEncoding("UTF-8"));
string str = reader.ReadToEnd(); //读取的页面数据(源码) reader.Close();
reader.Dispose();
response.Close();
string strRegexR = @"(?<=<tr>)([\s\S]*?)(?=</tr>)"; //构造解析表格行数据的正则表达式
//string strRegexD = @"(?<=<td[^>]*>[\s]*?)([\S]*)(?=[\s]*?</td>)"; //构造解析表格列数据的正则表达式
//string strRegexD = @"\\>(.+?)\\<";
Regex regexR = new Regex(strRegexR);
MatchCollection mcRows = regexR.Matches(str); //执行匹配,获取行数据 foreach (Match mr in mcRows )
{
listR = new List<string>();
string strRegex = @"<font.*?>(?<value>.*?)</font>";
Regex regex = new Regex(strRegex);
MatchCollection mcD = regex.Matches(mr.Groups[].ToString()); //执行匹配 for (int i = ; i < mcD.Count; i++)
{
string value = mcD[i].Groups["value"].Value;
listR.Add(value);//每行的数据放在list集合中,可自行怎么处理本行数据
}
list.Add(listR); }
return list;
}

asp.net网页上获取其中表格中的数据(爬数据)的更多相关文章

  1. [转载]JAVA获取word表格中数据的方案

    上一个项目的开发中需要实现从word中读取表格数据的功能,在JAVA社区搜索了很多资料,终于找到了两个相对最佳的方案,因为也得到了不少网友们的帮助,所以不敢独自享用,在此做一个分享. 两个方案分别是: ...

  2. [原创]JAVA获取word表格中数据的方案

    上一个项目的开发中需要实现从word中读取表格数据的功能,在JAVA社区搜索了很多资料,终于找到了两个相对最佳的方案,因为也得到了不少网友们的帮助,所以不敢独自享用,在此做一个分享. 两个方案分别是: ...

  3. C# 在excel表格中检索并导出数据

    由于工作需要,我经常使用excel文档来存储和处理各种数据,在生活中偶尔也会使用excel表格来记录各种开销,相信很多朋友也和我一样.Excel的功能很强大,其中一个很实用的数据处理功能就是查找和替换 ...

  4. 如何用perl将表格中不同列的数据进行拼凑,然后将拼凑后的数据用“|”连接在一起

    最近写了一个perl脚本,实现的功能是将表格中其中两列的数据进行拼凑,然后将拼凑后的数据用“|”连接在一起. 表格内容如下: 员工号码 员工姓名 职位 入职日期 1001 张三 销售 1980/12/ ...

  5. 网页上获取的元素值,为什么类型,string

    <body> <input type="text" value='9'/><input type="text" value='30 ...

  6. Javascript获取页面表格中的数据

    var main=mygrid.gettable("11"); //表示获取非固定列的表格 var main1=mygrid.gettable("01");// ...

  7. checkeds 选中获取tbale表格中某一列td标签中的值

    例如:  var checkedbox = $("input[type=checkbox][name='cid']:checked")   if (checkedbox.size( ...

  8. 利用JS 在网页上获取并显示当前日期 星期

    下边的HTML代码,可以取出日期与星期 <html><body><h1><script language=JavaScript>var d, s = & ...

  9. PHP如何获取Post请求中的Json字符串数据?

    摘自:http://dianjingjiaoyu.blog.163.com/blog/static/18347920820114194642257/ 最近用到ext与PHP交互,ext把json数据p ...

随机推荐

  1. 深度学习笔记(七)SSD 论文阅读笔记简化

    一. 算法概述 本文提出的SSD算法是一种直接预测目标类别和bounding box的多目标检测算法.与faster rcnn相比,该算法没有生成 proposal 的过程,这就极大提高了检测速度.针 ...

  2. Java 8中用法优雅的Stream,性能也"优雅"吗?

    之前的文章中我们介绍了Java 8中Stream相关的API,我们提到Stream API可以极大提高Java程序员的生产力,让程序员写出高效率.干净.简洁的代码. 那么,Stream API的性能到 ...

  3. WeakHashMap

    WeakHashMap 今天在具体业务的时候看到HashMap和WeakHashMap的区别.因为PHP语言并没有这种概念.所以很好奇做了一下研究. WeakHashMap WeakHashMap所谓 ...

  4. System.Data.Entity.Infrastructure.DbUpdateException

    异常描述:   捕捉到 System.Data.Entity.Infrastructure.DbUpdateException  HResult=-2146233087  Message=无法更新 E ...

  5. JVM垃圾回收

    1.  概念理解 1.1.  并行(Parallel)与并发(Concurrent) 并行:指多个垃圾收集线程并行工作,但此时用户线程仍然处于等待状态 并发:指用户线程与垃圾收集线程同时执行 1.2. ...

  6. SpringBoot+gradle项目构建war

    前言 一开始觉得这并不是什么很难的事情,但是踩坑了之后才发现... 步骤 1.在build.gradle配置文件中加入apply plugin: 'war' 很多人以为这样就完事了,我一开始也是这样认 ...

  7. Chapter 4 Invitations——28

    "Oh, thanks, now that's all cleared up." Heavy sarcasm. “哦,真感谢,现在一切都清楚了.” 我很讽刺的说道 I realiz ...

  8. Python:Selenium 2:使用

    创建一个浏览器对象 from selenium import webdriver browser = webdriver.Chrome() WebDriver在将控制权返回给测试脚本之前,会一直等待到 ...

  9. kubernetes的安装方法

    背景 自己学习k8s集群,无奈屌丝一枚,没钱配置vpn服务,安装k8s花费的时间太久了.为了小伙伴们可以快速安装k8s,我花了点时间整理了这篇博客,提供一个不用FQ就可以愉快安装k8s集群的方法. 主 ...

  10. 第一册:lesson109.

    原文: A goof idea question:What does Jane have with her coffee? Shall I make some coffe, Jane? That's ...