我正在使用
PHP-Spider来抓取网站,但是当它找不到.class时会抛出错误:
InvalidArgumentException:当前节点列表为空.
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() . ','; }