跪求用C#语言提取网页表格中的数据方法!!在线等!!急!!!!

我想用C#语言提取一网页表格中的数据(多行多列),请问各位大侠这个大概思路是什么,一些重要的代码或方法有哪些?小女子跪求!!!感谢了!!
忘了说了,就是一页固定的数据,这个该用哪些方法? 如果用indexof类的话,大概思路是怎样的?小女子乃一菜鸟级别,感谢各位大侠了!采用回答后可追加悬赏分!!

第1个回答  推荐于2016-03-13
抓取网页数据,不是一个固定的方法就能解决的.
每个页面布局方式都不同.

如果页面已经固定,就是读取table中的数据.
你可以先indexof("<table") indexof("</table>") 分别找到位置后.
Substring(indexof("<table"),indexof("</table>")-indexof("<table")) 用这个方法得到<table 和 </table> 中的所有字符.
然后去网上找一个过滤 html 的方法,过滤后剩下的就是数据了.当然也可以自己写方法过滤<table> 标签.

祝你成功了!本回答被提问者采纳
第2个回答  2010-05-26
哈,还是一女的啊,你想 像Table 表那种使用 网页中的数据。这样是有些难度的。一般都不这样做的。 不过要做的话还是有办法的。可以通过 document.getElementTagName() 貌似是个这个方法,不过拼写我可能写的不对。 通过这个方法 找个有关数据的 所有表格,然后在 javascript代码中 循环一下。 就差不多。
第3个回答  2010-05-26
如果table是服务器控件的话,
for(int i=0;i<table1.rows.count;i++)
{
for(int c=0;i<table1.rows[i].cell.count;i++)
{
string str=Table1.Rows[0].Cells[0].Text;//取出单元格数据
}
}
第4个回答  2010-05-26
是要动态抓取,还是就是一页固定的数据?

如果是动态抓取,那么你要用webclient去读取这页的内容。获取到的是一个字符串。如果是固定的页,那么你直接读就行了。

读进来之后,对这个字符串进行分析处理。你可以用正则去匹配,也可以用indexof类的方法去分析,获取到你需要的数据。
第5个回答  2010-05-26
是在本页面吗 如果是本页面就用一个JS 处理 给那个Table 一个id 用js 获取那个ID 然后就可以获取它里面你想要的值了
如果不是本页面 你可以用Request。Form["id"] 就可以获取了

跪求用C#语言提取网页表格中的数据方法!!在线等!!急!!!
每个页面布局方式都不同.如果页面已经固定,就是读取table中的数据.你可以先indexof("<table") indexof("") 分别找到位置后.Substring(indexof("<table"),indexof("")-indexof("<table")) 用这个方法得到<table 和 中的所有字符.然后去网上找一个过滤 html 的方法,过滤后剩下的就是...

C#怎么取网页TD中数据啊,在线等!
1就是第二列 2就是第三列~以此类推~想获取那个都没问题

C# 获取gridView中的数据 ,打印,打印预览如何实现,我在线等。 我只有10...
function printPage() { var newWin = window.open('printer','','');newWin.moveTo(10000,10000);var titleHTML = document.getElementById("printdiv").innerHTML;newWin.document.write(titleHTML);newWin.document.location.reload();newWin.print();newWin.close();} 然后把gridview放在id为prin...

如何使用C#取得表格中特定列下的有效值?
excel.Visible = false;MSExcel.Worksheet sheet = (MSExcel.Worksheet)excel.ActiveSheet;string value = (Microsoft.Office.Interop.Excel.Range)sheet.Cells[1, 1]).Text.ToString();\/\/取得第一列第一行的数据,也就是第一个单元格的数据 Cells[行,列]...

用C#语言怎么将project中的数据读取出来,显示到页面或者、保存到word...
{ string s = Application.StartupPath;\/\/程序的启动目录 string txtName = s + "\\\\output.txt";\/\/文件路径 if (File.Exists(txtName))\/\/如果已存在同名的文件 File.Delete(txtName);\/\/删除原文件 StreamWriter sw = new StreamWriter(txtName);\/\/实例化写入数据流 sw.WriteLine("{0}\\t{...

C# 中webBrowser1.Navigate("");打开后的网页用什么方法取得网页显示的...
using (WebClient client = new WebClient()){ string html = client.DownloadString("http:\/\/blog.sina.com.cn\/myblog\/rankuidview.php?time=1282124271531 ");string[] idArray = Regex.Match(html, @"\\[(.*)\\]").Groups[1].Value.Split(new char[] { ',' }, StringSplitOptions....

使用c#获取openldap部门和用户数据
try { if (dataReader.HasRows) { dataReader.Read(); loginName = dataReader["name"].ToString(); loginPassWord = dataReader["pwd"].ToString(); } } 你的代码中 使用if进行判断 没有使用循环 所以判断数据库有没有行,有行就只会获取一次啊...

用C#语言将1,2,3...9九位数分成三组,组成3个三位数且满足1:2:3的比例...
_L3.Remove(b); foreach (int c in _L3) { x = a * 100 + b * 10 + c; List<int> _L4 = new List<int>(_L3); _L4.Remove(c); foreach (int d in _L4) { List<int> _L5 = new List<int>(_L4); _L5...

怎么把C#提取出来的数据 放到html 表格中
两种方法 1、在html中加入,将数据库查询出来,如存到Gridview中或List<T>中(存到哪里看你喜欢谁),然后在中间用for或foreach遍历,循环输出数据,就行了!2、既然你用的C#,直接用vs里的GridView控件,再添加一个sqldatasource或objectdatasource,自动生成表格了,这个更快些。另外,js是客户端执行...

...Column这个方法是什么意思,以及参数详解,在线等
的确是自动调整列宽,,有2个重载方法,第一个方法是 AutoSizeColumn(column);column是某一列,意思是设置column这一列为自动调整列宽;;;第二个方法是 AutoSizeColumn(column,bool);bool表示是否采用合并单元格,column同上,,

相似回答