InvalidArgumentException:当前节点列表为空. PHP-Spider(DOMCrawler Symfony)

前端之家收集整理的这篇文章主要介绍了InvalidArgumentException:当前节点列表为空. PHP-Spider(DOMCrawler Symfony)前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在使用 PHP-Spider来抓取网站,但是当它找不到.class时会抛出错误
InvalidArgumentException:当前节点列表为空.

代码是这样的:

foreach ($spider->getPersistenceHandler() as $resource) {
    echo $resource->getCrawler()->filterXpath('//title')->text().",";
    echo $resource->getCrawler()->filterXpath("//Meta[@name='description']/@content")->text()."<br>";
    echo $resource->getCrawler()->filterXpath("//div[@class='buyFooter']")->text();
    echo $resource->getCrawler()->filterXpath("//div[@class='listFooter']")->text();
}

在某些页面上,类.buyFooter存在,而在其他类上存在.listFooter.

有没有办法检查它是否存在?

我试过了isset& !空但没有运气

是的,count()方法可用于此,如下所示:
if( $resource->getCrawler()->filterXpath('//title')->count() )
{
    echo $resource->getCrawler()->filterXpath('//title')->text() . ',';
}

猜你在找的PHP相关文章