Php 简单DOM和<;李>;

Php 简单DOM和<;李>;,php,dom,Php,Dom,我尝试过几种不同的方法,但似乎没有任何效果。(我尝试了所有的例子)按原样使用代码,更改我需要的内容,即class=xxx和url 所以我试着从网页上提取一些信息。就DOM而言,没有可处理的子对象,使用xpath方法没有得到任何返回。我猜我做错了什么 <div id="wpp-6" class="widget popular-posts"> <div class="widget_title">POPULAR</div><!-- Wordpress

我尝试过几种不同的方法,但似乎没有任何效果。(我尝试了所有的例子)按原样使用代码,更改我需要的内容,即class=xxx和url

所以我试着从网页上提取一些信息。就DOM而言,没有可处理的子对象,使用xpath方法没有得到任何返回。我猜我做错了什么

<div id="wpp-6" class="widget popular-posts">
    <div class="widget_title">POPULAR</div><!-- Wordpress Popular Posts Plugin v2.3.2         [Widget] [daily] [regular] -->
    <ul>
        <li>
            <a href="http://link.html" title="Title of post" class="wpp-post-title">THE DATA I    WANT</a> <span class="post-stats"></span>
        </li>
        <!-- More lists -->
    </ul>
</div>

流行的
之后还有大约9条列表语句。 有什么建议吗?

使用您可以很容易地做到这一点,只需下载
simple\u html\u dom.php
文件并按如下方式使用即可

include('simple_html_dom.php');
$html=file_get_html('http://psfk.com');
foreach($html->find('div#wpp-6 ul li a') as $a){
    echo $a->innertext.'<br />';
}
include('simple_html_dom.php');
$html=file\u get\u html('http://psfk.com');
foreach($html->find('div#wpp-6 ul li a')作为$a){
回显$a->innertext.“
”; }
输出将(2013年1月14日星期一测试) 谷歌流感地图描绘了美国最严重的流感爆发

透明胶带肖像扭曲了人的面孔[图片]

奥威尔《1984》的新设计突出了 审查制度

用裸体模特过滤酒制成的伏特加[视频]

三星推出柔性屏幕

麦当劳在澳大利亚改名

三星™s的透明屏幕是未来的零售窗口 [CES]

迪塔·冯·提斯将二维码直接缝在她的衣服上

Abercrombie&Fitch Boss让乘务员只穿拳击服 &私人飞机上的凉鞋

Mirror应用程序向女性展示了如果她们继续喝酒会怎样变老


如果您想打印带有
链接的标题,比如
..
,那么只需使用
echo$a

我已经有一段时间没有使用xpath了,下面是我的解决方案 您可以通过这种方式遍历DOM树,检查所需元素的id和类

<?php
    error_reporting(0); //needed because of invalid xml




    $url = "http://www.psfk.com";

    $xml = new DOMDocument("1.0", 'UTF-8'); 
    $str = file_get_contents($url);


    // Load the url's contents into the DOM 
    $xml->loadHTML($str); 



    //Loop through all divs in the dom until we find what we need 
    foreach($xml->getElementsByTagName('div') as $div) {
        if($div->getAttribute('id') == 'wpp-6' && $div->getAttribute('class') == 'widget popular-posts') {
            if($div->parentNode->getAttribute('id') == 'right') {
                foreach($div->getElementsByTagName('li') as $li) {
                    foreach($li->getElementsByTagName('a') as $link) {
                        echo $link->textContent . "<br>";;
                    }
                }
            }
        }


    }

?>

你能告诉我你想从这里获取什么吗?你能给远程页面链接吗?当然。远程页面是www.psfk.com,我想要的是右边的“热门”标题。不需要链接,只需要标题。谢谢,谢赫,谢谢你。我和它斗争了一段时间。谢谢你的帮助!。