免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 6626 | 回复: 6
打印 上一主题 下一主题

如何简单提取HTML中的表格内容?谢谢 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2007-06-14 14:09 |只看该作者 |倒序浏览
请问要从一个html文件里提取以下信息,我不熟悉多行匹配,请问应该如何写段代码?如用现成PM,有哪些用起来比较方便,谢谢
以下是一个html文件里的一部分内容,这是一个表格里的信息<td>Lane </td>对应着<td>8</td>,依此类推,谢谢
<td>Lane </td>
<td>Clusters </td>
<td>Av 1st Cycle Int </td>
<td>% intensity after 20 cycles </td>
<td>% PF Clusters </td>
<td>% Align (PF) </td>
<td>Av Alignment Score (PF) </td>
<td> % Error Rate (PF) </td>
</tr>
<tr>
<td>8</td>
<td>2528 +/- 638</td>
<td>102 +/- 22</td>
<td>0.00 +/- 0.00</td>
<td>45.36 +/- 4.23</td>
<td>85.36 +/- 1.92</td>
<td>2474.29 +/- 141.89</td>
<td>2.09 +/- 0.29</td>
</tr>
</table>
<h2><br></br>Expanded Lane Summary<br></br></h2>
<table border="1" cellpadding="5">
<tr>

论坛徽章:
0
2 [报告]
发表于 2007-06-14 14:34 |只看该作者
情况不明

论坛徽章:
0
3 [报告]
发表于 2007-06-14 15:17 |只看该作者
不是很明白你的意思,是要提取<table>...</table>之间的内容么
大致这样

  1. while(<FILE>) {
  2.     if(/<table>/../<\/table>/) {
  3.         # do sth
  4.     }
  5. }
复制代码

论坛徽章:
0
4 [报告]
发表于 2007-06-14 16:32 |只看该作者
谢谢关注,最后想得到的东西就是
上面是一个网页文件里的部分内容,其中我想要得到的就是从中获得一些key-value对如
Lane = “8”
Clusters=“2528 +/- 638”
% intensity after 20 cycles=“0.00 +/- 0.00”
.....
这样的一组key-value对,谢谢

论坛徽章:
0
5 [报告]
发表于 2007-06-14 17:19 |只看该作者

  1. my ($flag, @key, @val) = ();

  2. while(<FILE>) {
  3.     chomp;
  4.     s/^\s+|\s+$//g;
  5.     if(/^<table>$/ .. /^<\/table>$/) {
  6.         if(/<\/tr>/) {
  7.             $flag = 1;
  8.         }
  9.         if(/<td>(.+)<\/td>/) {
  10.             $flag ? push @val, $1 : push @key, $1;
  11.         }
  12.     }
  13. }
  14. for (my $i = 0; $i < @key; $i++) {
  15.     print $key[$i], ' => ', $val[$i], "\n";
  16. }
复制代码

论坛徽章:
0
6 [报告]
发表于 2007-06-14 17:20 |只看该作者
如果只是简单的表格提取数据
请用
HTML::TableExtract

论坛徽章:
0
7 [报告]
发表于 2007-06-14 17:54 |只看该作者
谢谢各位!
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP