我在某个网站上有一个html页面,它包含以下html,我想在其中检索div内的内容。
<div class="st-text" id="review-body">
<p>....</p>
<p>............</p>
<p>..........</p>
</div>
我尝试过以下代码
$html = new DOMDocument();
@$html->loadHtmlFile('www.somesite.com');
$xpath = new DOMXPath( $html );
$nodelist = $xpath->query( "//div[@id='review-body']/p/" );
echo "<pre>";print_r($nodelist);exit;
我收到以下错误
DOMXPath::query(): Invalid expression
任何人都可以帮助您在$xpath->query()
答案 0 :(得分:1)
请尝试使用此表达式:
$nodelist = $xpath->query("//div[@id='review-body']//p");
或者,如果您知道您要查找的p
是#review-body
div的直接后代,那么表达式可以是//div[@id='review-body']/p
。