在perl中使用Mojo :: Dom解析Html

时间:2013-09-06 06:33:06

标签: html perl dom

我正在尝试使用perl中的Mojo :: Dom解析html内容

html内容

<div id="description" class="markdown description col7" style="display: block;">
Hello everyone !        #<---- data which i want      
 <div id="shop-about">
  <div class="shop-about-message">
   <h2>      
   Text
    </h2>
  </div>
<div class="avatars">
            <div class="avatar">
                <a href="link">

                </a>
                <div class="avatar-name">
                    Jacqueline
                </div>
        </div>
    </div>            </div>
                    </div>

我使用的代码是。,

my $desc=$dom->find('#description'); print $desc;

这打印div内的所有数据。但我只想要来自父div的内容。请给出一些建议。

2 个答案:

答案 0 :(得分:2)

say $dom->at("#description")->text;

答案 1 :(得分:2)

来自perldoc

#Find
say '$dom->at(\'#description\')->text';
say $dom->at('#description')->text;

say '$dom->find(\'h2\')->text';
say $dom->find('h2')->text;

say '$dom->find(\'[id]\')->attr(\'id\')';
say $dom->find('[id]')->attr('id');

输出:

$dom->at('#description')->text
Hello everyone ! #<---- data which i want

$dom->find('h2')->text
Text

$dom->find('[id]')->attr('id')
description
shop-about

正如您所看到的,$dom->at('#description')->text看起来正在寻找您正在寻找的东西。