使用xpath在网页上搜索特定文本

时间:2014-05-15 10:41:09

标签: xpath

我想使用XPath在网页上搜索特定文本。

<?php
$url = 'http://www.barringtonsports.com/browse/hockey_sticks/show/325/list';
$html = file_get_contents($url);        
$doc = new DOMDocument();
@$doc->loadHTML($html);     
$xpath = new DOMXPath($doc);
$found = $xpath->evaluate("//span[contains(text(),'blablabla')]");
if(!$found){
   echo "NOT FOUND";        
}
else{
    echo "found";
}
?>

它总是给出输出,因为文本blablabla不在网页中。 问题出在哪儿? 我的evalute表达式是否适合搜索特定文本?

1 个答案:

答案 0 :(得分:0)

evaluate不会为选择节点的XPath表达式返回布尔值,您必须使用:

$found = $xpath->evaluate("boolean(//span[contains(text(),'blablabla')])");