无论如何,我可以使用Perl从HTML页面中提取样式标记数据
#!/usr/bin/perl
use strict;
my $HTML = <<"EOF";
<HTML>
<head>
<style type='text/css'>
#yui-dt0-bdrow0 td{background:#CFF;}
#yui-dt0-bdrow1 td{background:#CFF;}
#yui-dt0-bdrow2 td{background:#CFF;}
</style>
</head>
</HTML>
EOF
我需要从上面的HTML代码中提取yui-dt0-bdrow0 td{background:#CFF;}
信息。
我搜索了很多模块,但没找到合适的模块。除此之外,我没有尝试编写任何代码来提取信息
感谢任何帮助。
答案 0 :(得分:5)
样品:
#!/usr/bin/perl
use strict;
use warnings;
use Mojo::DOM;
my $HTML = <<"EOF";
<HTML>
<head>
<style type='text/css'>
#yui-dt0-bdrow0 td{background:#CFF;}
#yui-dt0-bdrow1 td{background:#CFF;}
#yui-dt0-bdrow2 td{background:#CFF;}
</style>
</head>
</HTML>
EOF
my $dom = Mojo::DOM->new( $HTML );
print $dom->find('style')->text;
输出
chankey@pathak:~/myscripts$ perl mojo.pl
#yui-dt0-bdrow0 td{background:#CFF;}
#yui-dt0-bdrow1 td{background:#CFF;}
#yui-dt0-bdrow2 td{background:#CFF;}
您现在可以过滤掉所需的数据。
关于Mojo::DOM
和Mojo::UserAgent
的8分钟视频教程,请查看Mojocast Episode 5