【发布时间】:2015-02-12 09:37:26
【问题描述】:
我有一个 PHP 脚本,它解析网页并使用 DOMDocument 和 DOMXpath 库在网页中导航。文运行$tr->ChildNodes->length得到3个<td>,指令返回6,其中0返回第一个<td>,1是空字符串(19),2是第二个<td>,3又是空字符串(19),4 是第三个<td>,5 是另一个空字符串(19),6 是页面的整个 HTML。 (使用$dom->saveHTML($tr->childNodes->item(0) 等测试)
我如何让->length 返回正确的号码?为什么它的行为如此奇怪?
<tr>
<td>
<span>...</span>
</td>
<td>
<a href="..."><img ...></a>
</td>
<td>
<div>
<span>
<a href="...">...</a>
<br>
<ahref="...">...</a>
</span>
<span>...</span>
<br><br>
<a href="...">...</a>, <a href="...">...</a>
</div>
<div>
<a href="...">...</a> | <a href="...">...</a>
</div>
</td>
</tr>
请注意,我省略了一些属性,如样式、类、数据等。
【问题讨论】:
标签: php web-scraping domdocument domxpath