下面的方法获取页面中表格数据,每个页面不相同,获取的方式(主要是正则表达式)不一样,只是提供方法参考。大神勿喷,刚使用了,就记下来了。
其中数据怎么存,主要就看着怎么使用了。只是方便记录就都放在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. spring-cloud-sleuth+zipkin源码探究

    1. spring-cloud-sleuth+zipkin源码探究 1.1. 前言   粗略看了下spring cloud sleuth core源码,发现内容真的有点多,它支持了很多类型的链路追踪, ...

  2. Android开发:在Eclipse中配置Android环境

    一.文件需要: https://pan.baidu.com/s/1-XCSSPW5JGyPRlvwRVSfmA 提取码:m5t8 NDK过大没有上传在这个文件里. 二.在Eclipse中配置Tools ...

  3. HBase篇--初始Hbase

    一.前述 1.HBase,是一个高可靠性.高性能.面向列.可伸缩.实时读写的分布式数据库.2.利用Hadoop HDFS作为其文件存储系统,利用Hadoop MapReduce来处理HBase中的海量 ...

  4. JDK1.8 ConcurrentHashMap源码阅读

    1.  带着问题去阅读 为什么说ConcurrentHashMap是线程安全的?或者说 ConcurrentHashMap是如何防止并发的? 2.  字段和常量 首先,来看一下ConcurrentHa ...

  5. 手工在Docker for mac上安装Kubernetes

    此文发布时间比较早,当前已经有更好的办法,请参考网页: https://github.com/AliyunContainerService/k8s-for-docker-desktop 以下为原文 通 ...

  6. SQL数据库连接语句

    一般的远程访问的写成这样: Data Source=IP ;Initial Catalog=数据库名 ;UserID= 用户名 ;Password=密码 本地访问的写成这样: Data Source= ...

  7. Linux系统的数据写入机制--延迟写入

    我们都知道,在Linux关机的之前都会要运行一个命令那就是sync,这个命令是同步的意思,那为什么要运行这个?而且之前的数据改变我们已经看见了,为什么还要运行这个命令?要回答这个问题就要说一下Linu ...

  8. 【c#】RabbitMQ学习文档(一)Hello World

    一.简介 RabbitMQ是一个消息的代理器,用于接收和发送消息,你可以这样想,他就是一个邮局,当您把需要寄送的邮件投递到邮筒之时,你可以确定的是邮递员先生肯定会把邮件发送到需要接收邮件的人的手里,不 ...

  9. centos7修改网卡名字为传统名字

    前言:在centos6及其之前的系统中,我们已经习惯了网卡为eth0,eht1这种网卡命名方式,在centos7上网卡名字为ens33,ens37,ens38等名字,很别扭,想统一下网卡的命名. 1 ...

  10. PE知识复习之PE的重定位表

    PE知识复习之PE的重定位表 一丶何为重定位 重定位的意思就是修正偏移的意思.  如一个地址位 0x401234 ,Imagebase = 0x400000 . 那么RVA就是 1234.  如果Im ...