使用Mojo :: DOM查找DIV下的内容

  • 本文关键字:查找 Mojo DOM 使用 DIV perl mojo
  • 更新时间 :
  • 英文 :


我需要解析一些HTML代码。标签ID的模式为:

<tr id="date">.....</tr>
<tr id="band01"><td>field1</td><td>field2</td></tr>
<tr id="band02">...contents...</tr>
.....
<tr id="(others">.....

我正在使用perl Mojo :: dom parser,并想提取所有以"频段"以下数字开始的名称及其内容的实际ID。

我该如何实现?

e [foo^=" bar"]选择器匹配的任何元素都以" bar"开头的" foo"属性。因此,您可以使用:

my $dom = Mojo::DOM->new($html);
my $rows = $dom->find('tr[id^="band"]');

$rows将是Mojo :: Mojo :: Dom对象的集合,代表每个匹配元素及其各自的内容。例如,获取匹配ID的列表:

my @ids = $rows->map(attr => 'id')->each;

或更标准的perl:

my @ids = map { $_->{id} } @$rows;

最新更新