这是我想要实现的目标:检索页面上的所有产品并将它们放入一个数组中。这是我正在使用的代码:
$page2 = curl_exec($ch);
$doc = new DOMDocument();
@$doc->loadHTML($page2);
$nodes = $doc->getElementsByTagName('title');
$noders = $doc->getElementsByClassName('productImage');
$title = $nodes->item(0)->nodeValue;
$product = $noders->item(0)->imageObject.src;
它适用于 $title 但
不适用于产品。有关信息,在 HTML 代码中,img 标记如下所示:
<img alt="" class="productImage" data-altimages="" src="xxxx">
我一直在看这个 ( PHP DOMDocument how to get element? ),但我仍然不明白如何让它工作。
PS:我收到这个错误:
Call to undefined method
DOMDocument::getElementsByclassName()
最佳答案
我最终使用了以下解决方案:
$classname="blockProduct";
$finder = new DomXPath($doc);
$spaner = $finder->query("//*[contains(@class, '$classname')]");
关于php - 使用 DOMdocument() 方法按类名获取元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20728839/