Как получить значение из вложенных тегов divs с помощью Perl HTML :: TokeParser? - PullRequest
1 голос
/ 16 сентября 2010

Я использую HTML :: TokeParser для анализа HTML-файла и получения данных в тегах div.Мой HTML-код выглядит следующим образом:

<div class='t_and_h f_t' id='t_f_i'>
  <div class='icon'>
    <img alt="icon" src=""/>
  </div>
  <div class='t'>
    12:31 PM
  </div>
  <div class='h'>
    <a>Residue 4</a>
  </div>
  <div class='f_t'>
    TRUE
  </div>
</div>

Мой код выглядит следующим образом:

while ( $tag = $stream->get_tag('div') ) 
{
    if($tag->[1]{class} eq 't')
    {   
        $time = $stream->get_trimmed_text('</div>');
        print "$time \n";
    }
}

Но на выходе выводятся все поля, то есть

12:31PM Residue 4 TRUE

Что такоеЯ делаю не так?

1 Ответ

0 голосов
/ 16 сентября 2010

</div> - это внешний закрывающий тег. Просто оставьте это, чтобы остаться в текущей позиции потока, таким образом:

my $time = $stream->get_trimmed_text; 
# 12:31 PM
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...