我正在使用PHP、'DomDrawler‘和'Xpath Helper’获取一些信息。
查询某些节点信息时,没有返回匹配值。
我不知道为什么它不能工作。
页面

<?php
require '../vendor/autoload.php';
use GuzzleHttp\Client;
use Symfony\Component\DomCrawler\Crawler;
function showcourse($response){
$data = []; //Store
$crawler = new Crawler();
$crawler->addHtmlContent($response);
try {
$data['name'] = $crawler->filterXPath('/html/body/div[@id=\'brief\']
/table/tbody/tr[1]/td[1]/table[@class=\'items\'][1]/tbody/tr/td[@class=
\'cover\'][1]/a[@id=\'NEU01000219238\']/img/@src')->text();
} catch (\Exception $e) {
echo "No nodes ";
}
print_r($data);
//echo $response;
}
?>结果

不会返回任何内容。
发布于 2018-05-24 15:52:26
首先,您所展示的xpath示例彼此不同...如果没有xml文档,这只是胡乱猜测,但这种错误很可能是xpath表达式问题。尽量降低xpath表达式的复杂性,直到返回预期的结果。或者尝试从最简单的表达式/html开始。如果这也没有返回任何内容,请尝试将//作为表达式...如果也没有结果,错误很可能不是您的表达式。仔细检查您的响应是否返回有效的文档。
https://stackoverflow.com/questions/50501045
复制相似问题