我在抓取网页方面有一些非常基本的知识但是我坚持一件事。我正在使用php简单的html dom,我正努力从每个' li'中获取图像。标签
<ul class="slides">
<li>
<img src="www.webpage.com/oH7oCOEhQABNAE2hnTQ.jpg" draggable="false">
</li>
<li>
<img src="www.webpage.com/ooabIAkbadaaIEJnkka.jpg" draggable="false">
</li>
<li>
<img src="www.webpage.com/bEQLaooknOAEQlaihna.jpg" draggable="false">
</li>
</ul>
我可以使用以下代码轻松获得第一张图片:
$td = $d1->find('ul.slides li img',0);
if ($td != null){
$slides_image1 = trim($td->src) ;
}
但是还没有能够弄清楚如何获得任何其他图像。显然我需要去第一个&#39; li&#39;并检索该图像,然后第二个&#39; li&#39;并检索该图像等...任何人都可以帮忙吗?
答案 0 :(得分:1)
使用简单的HTML DOM解析器,而不是将0传递给表示返回第一个实例的find
,错过此值并返回所有实例。因此,请使用foreach()
...
$slides_image = [];
foreach ($d1->find('ul.slides li img') as $td) {
$slides_image[] = trim($td->src) ;
}