2011-06-30 97 views
0

这是我的代码:简单的HTML DOM正确

<?php 
    include("includes/simple_html_dom.php") ; 

    $url_to_get = "http://getconfused.net/" ; 
    $homePage = file_get_html($url_to_get); 
    $allLinks = $homePage->find('a'); 
    foreach ($allLinks as $link) 
    { 
     $href = $link->innertext ; 
     echo $href . "</br>" ; 
    } 
?> 

简单。只要抓取一个页面,找到任何链接并打印该内文(<a >innertext</a>)。但由于某种原因,这里简单的html dom跳过了很多链接。具体而言,它缺少页面第一个div(<div id="getconfused">)的所有链接。 为什么?如何解决这个问题呢?

回答

0

这是身体的div吗?那么页面是否有效? 可能是该html在该部分中损坏,导致该div被跳过。

+0

是它在身上 –

+0

而且是HTML有效吗?也许你可以使用验证器来检查。链接显示在浏览器中的事实并不意味着HTML是有效的。浏览器可能会错误地修正错误,而simple_html_dom可能无法解析错误。 – GolezTrol

+0

nopes,27错误。我现在要去尝试htmltidy .. –