【问题标题】:How to get data from other site如何从其他站点获取数据
【发布时间】:2014-04-16 20:52:33
【问题描述】:

我正在制作一个网站,它会有一个用户页面,在该页面上用户得分。我从另一个网站上拿了这个分数,但问题是如何做到这一点:如何从任何网站上的任何元素获取文本? 我想尝试this,但我不知道如何选择需要文本的th,因为整个表没有任何ID,只有一个类。您可以在代码中看到,我想要来自写入位置的文本:I NEED THIS

谢谢。

<table class="profile" style="padding:0px; margin:0px;">
    <tr>
        <td valign="top" style="padding:0px; margin:0px;">
            <h3>TEXT</h3>
        </td>
        <td valign="bottom" align="right">
            TEXT</br>
            TEXT</br>
        </td>
    </tr>
    <tr>
        <td valign="top">
        <table class="score_stats">
            <tr><th>TEXT</th><th>   **I NEED THIS**   </th></tr>
            <tr><td>TEXT</td><td>NUMBER</td></tr>
            <tr><td>TEXT</td><td>NUMBER</td></tr>
            <tr><td>TEXT</td><td>NUMBER</td></tr>
            <tr><td>TEXT</td><td>NUMBER</td></tr>
            <tr><td>TEXT</td><td>NUMBER</td></tr>
       </table>
       </td>
    </tr>
</table>

【问题讨论】:

    标签: php dom text


    【解决方案1】:
    1. 获取页面的html代码,字符串或数组 这里有很多选择>>How do I get the HTML code of a web page in PHP?

    2.用一些简单的代码拆分那些字符串或你需要的东西,我知道你可以自己找到它

    希望对你有帮助

    【讨论】:

    • 好吧,我不能说我理解这一点,因为我是 PHP 的初学者。可以举个例子吗?
    • 我需要你正在使用的网址,我可以要吗,因为有很多方法,我可以为你选择最好的
    • 我做了一些东西(你可以在我的回答中看到),它正在工作。无论如何,谢谢。
    【解决方案2】:

    经过一整天的尝试,我做到了:

    function getPlayerScore($url){
        libxml_use_internal_errors( true );
        $dom = new DOMDocument();
        $dom->loadHTMLFile( $url );
        $finder = new DOMXpath( $dom );
        $nodes = $finder->query( "//*[@class='score_stats']/tr" )->item(0)->nodeValue;
        $nodes = str_split($nodes, 11);
        return $nodes[1];
    }
    
    getPlayerScore($user['playercp'])
    

    ...它正在工作。

    【讨论】:

      猜你喜欢
      • 2012-05-01
      • 1970-01-01
      • 2013-06-10
      • 2019-05-13
      • 2013-01-10
      • 1970-01-01
      • 2015-02-17
      • 2015-10-22
      相关资源
      最近更新 更多