使用Perl提取样式标记数据

时间:2014-05-12 08:48:57

标签: perl

无论如何,我可以使用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;}信息。

我搜索了很多模块,但没找到合适的模块。除此之外,我没有尝试编写任何代码来提取信息

感谢任何帮助。

1 个答案:

答案 0 :(得分:5)

使用Mojo::DOM

样品:

#!/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::DOMMojo::UserAgent的8分钟视频教程,请查看Mojocast Episode 5

相关问题