读书人

使用ruby从数据中截取所需要的内容可

发布时间: 2012-05-30 20:20:04 作者: rapoo

使用ruby从数据中截取所需要的内容,求一个可实现的程序,拜托各位大神~
获取的数据是从网页上整个抓取过来的,使用了下面的代码:
require 'watir'

ie = Watir::IE.start(网址)
url=ie.url()
str=ie.html()

获取到的内容为:
<TD class=black><A id=Apps_rptMain_ctl02_A1 title="新京" href="http://baidu.com/App254222.html" target=_blank>新京</A></TD>
<TD>3.1.2</TD>
<TD class=black><A id=Apps_rptMain_ctl03_A1 title="盛京" href="http://baidu.com/App245026.html" target=_blank>盛京</A></TD>
<TD>3.1.2</TD>

想要获取到内容中红色字体的数据,请问代码要怎么写?

[解决办法]
如果能拿到这小段html,那基本上可以转成xml然后用dom来获取,如果html不满足xml的语法要求,就只有通过正规表示来查找了~
[解决办法]

Perl code
#!/usr/bin/env perluse strict;use warnings;my @lines = (    '<TD class=black><A id=Apps_rptMain_ctl02_A1 title="新京" href="http://baidu.com/App254222.html" target=_blank>新京</A></TD><TD>3.1.2</TD>',    '<TD class=black><A id=Apps_rptMain_ctl03_A1 title="盛京" href="http://baidu.com/App245026.html" target=_blank>盛京</A></TD><TD>3.1.2</TD>',);for my $line (@lines) {    if ($line =~ /<TD.*?><A.*? title=\"([^\"]+)\".*?<TD>(\d\.\d\.\d)<\/TD>/) {        print "$1 $2\n";    }} 

读书人网 >perl python

热点推荐