使用Perl提取样式标记数据

dou*_*ker 0 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
Run Code Online (Sandbox Code Playgroud)

我需要yui-dt0-bdrow0 td{background:#CFF;}从上面的HTML代码中提取信息.

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

任何帮助表示赞赏.

Cha*_*hak 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;
Run Code Online (Sandbox Code Playgroud)

产量

chankey@pathak:~/myscripts$ perl mojo.pl 


    #yui-dt0-bdrow0 td{background:#CFF;}

    #yui-dt0-bdrow1 td{background:#CFF;}

    #yui-dt0-bdrow2 td{background:#CFF;}
Run Code Online (Sandbox Code Playgroud)

您现在可以过滤掉所需的数据.

有关8分钟的视频教程Mojo::DOM,Mojo::UserAgent请查看Mojocast Episode 5