如何根据其类提取HTML元素?

前端之家收集整理的这篇文章主要介绍了如何根据其类提取HTML元素?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我刚刚开始在Perl,并写了一个简单的脚本来做一些web刮.我使用WWW :: Mechanize和 HTML :: TreeBuilder来完成大部分的工作,但是我遇到了麻烦.我有以下HTML:
<table class="winsTable">
    <thead>...</thead>
    <tbody>
        <tr>
            <td class = "wins">15</td>
        </tr>
    </tbody>
</table>

我知道有一些模块从表中获取数据,但这是一个特例;不是我想要的所有数据都在表中.所以,我试过:

my $tree = HTML::TreeBuilder->new_from_url( $url );
my @data = $tree->find('td class = "wins"');

但是@data返回空.我知道这个方法将没有类名称,因为我已经使用$tree-> find(‘strong’)成功地解析了数据.那么,有没有可以处理这种类型的HTML语法的模块?我扫描了HTML :: TreeBuilder文档,没有发现任何似乎,但我可能是错的.

解决方法

我使用的很好(有时候有点慢)HTML :: TreeBuilder :: XPath模块:
my $tree = HTML::TreeBuilder::XPath->new_from_content( $mech->content() );
my @data = $tree->findvalues('//table[ @class = "winsTable" ]//td[@class = "wins"]');

猜你在找的HTML相关文章