解析HTML标题

时间:2013-10-04 05:18:01

标签: html perl

...
<div class="termContainer">
<h4>SUMMER 2013</h4>
<ul>
<li>   
<a href="url" title="A">
<span>A</span>
</a></li>
<li><a href="url" title="B">
<span>B</span>
</a></li>
<li><a href="url" title="C">
<span>C</span>
</a></li>
</ul>
</div>
...
<div class="termContainer">
<h4>SPRING 2013</h4>
...other links
</div>
...

我正在编写一个perl脚本来获取

中的链接标题
<div class="termContainer"> 

在上面的HTML代码中。我的预期结果是A,B,C。

我真的不知道如何接近它。有什么建议吗?

非常感谢。

1 个答案:

答案 0 :(得分:4)

use HTML::TreeBuilder::XPath;

my $html = <<EOFHTML;
...
<div class="termContainer">
<h4>SUMMER 2013</h4>
<ul>
<li>   
<a href="url" title="A">
<span>A</span>
</a></li>
<li><a href="url" title="B">
<span>B</span>
</a></li>
<li><a href="url" title="C">
<span>C</span>
</a></li>
</ul>
</div>
...
<div class="termContainer">
<h4>SPRING 2013</h4>
...other links
</div>
...
EOFHTML

my $tree = HTML::TreeBuilder::XPath->new_from_content($html);

foreach my $title ( $tree->findvalues('//div[@class="termContainer"]//a/@title') ) {
    print $title, "\n";
}