xpath在页面中找到特定链接

时间:2009-10-15 08:13:53

标签: html parsing xpath

我正在尝试使用xpath从此页面将电子邮件发送给朋友链接。

http://www.guardian.co.uk/education/2009/oct/14/30000-miss-university-place

链接本身包含在像这样的标签中

            <li><a class="rollover sendlink" href="http://www.guardian.co.uk/email/354237257"  title="Opens an email form" name="&lid={pageToolbox}{Email a friend}&lpos={pageToolbox}{2}"><img src="http://static.guim.co.uk/static/80163/common/images/icon_email-friend.gif" alt="" class="trail-icon" /><span>Send to a friend</span></a></li>

我正在使用它来查询,但这不太对。

            $links = $xpath->query("//a/span[text()='Send to a friend']/@href");

4 个答案:

答案 0 :(得分:3)

你正试图获得跨度的href。我想你想要

$links = $xpath->query("//a[span/text()='Send to a friend']/@href");

答案 1 :(得分:1)

您需要使用类似的内容(因为 href a 的属性):

$links = $xpath->query("//a[span/text()='Send to a friend']/@href");

答案 2 :(得分:1)

href是锚的属性,因此您需要: -

 $links = $xpath->query("//a[span[text()='Send to a friend']]/@href");

答案 3 :(得分:1)

试试这个

 $links = $xpath->query("//a[span='Send to a friend']/@href");