我只是从提到的 Parser 开始,并以某种方式直接从一开始就解决问题。
参考本教程:
我现在只想在具有类 ClearBoth Box 的 div 的源代码中找到内容
我用 curl 检索代码并创建一个简单的 html dom 对象:
$cl = curl_exec($curl);
$html = new simple_html_dom();
$html->load($cl);
然后我想将 div 的内容添加到一个名为 divs 的数组中:
$divs = $html->find('div[.ClearBoth Box]');
但是现在,当我 print_r $divs 时,它提供了更多,尽管源代码在 div 中没有更多。
像这样:
Array
(
[0] => simple_html_dom_node Object
(
[nodetype] => 1
[tag] => br
[attr] => Array
(
[class] => ClearBoth
)
[children] => Array
(
)
[nodes] => Array
(
)
[parent] => simple_html_dom_node Object
(
[nodetype] => 1
[tag] => div
[attr] => Array
(
[class] => SocialMedia
)
[children] => Array
(
[0] => simple_html_dom_node Object
(
[nodetype] => 1
[tag] => iframe
[attr] => Array
(
[id] => ShowFacebookButtons
[class] => SocialWeb FloatLeft
[src] => http://www.facebook.com/plugins/xxx
[style] => border:none; overflow:hidden; width: 250px; height: 70px;
)
[children] => Array
(
)
[nodes] => Array
(
)
我不明白为什么 $divs 不只是来自 div 的代码?
以下是网站上的源代码示例:
<div class="ClearBoth Box">
<div>
<i class="Icon SmallIcon ProductRatingEnabledIconSmall" title="gute peppige Qualität: Sehr empfehlenswert"></i>
<i class="Icon SmallIcon ProductRatingEnabledIconSmall" title="gute peppige Qualität: Sehr empfehlenswert"></i>
<i class="Icon SmallIcon ProductRatingEnabledIconSmall" title="gute peppige Qualität: Sehr empfehlenswert"></i>
<i class="Icon SmallIcon ProductRatingEnabledIconSmall" title="gute peppige Qualität: Sehr empfehlenswert"></i>
<i class="Icon SmallIcon ProductRatingEnabledIconSmall" title="gute peppige Qualität: Sehr empfehlenswert"></i>
<strong class="AlignMiddle LeftSmallPadding">gute peppige Qualität</strong> <span class="AlignMiddle">(17.03.2013)</span>
</div>
<div class="BottomMargin">
gute Verarbeitung, schönes Design,
</div>
</div>
我究竟做错了什么?