php DOM从网页上读取

时间:2013-11-23 05:49:43

标签: php html dom

我是php DOM的新手,我读到了DOMDocument。我正在尝试从网页创建DOMDocument。因此,我可以在加载的网页上执行DOM操作。

我试过了,

<?php
    $dom = new DOMDocument();
    $dom->loadHTMLFile("www.google.com");
    echo($dom->textContent);
?>

我尝试了几个功能,例如loadloadHTML ...

稍后我想执行getElementById()等操作。

我该怎么做??

2 个答案:

答案 0 :(得分:2)

DOMDocument::loadHTMLFile只能打开本地系统中的文件。所以你应该先下载它。

<php
    $dom = loadHtmlFromWeb("www.google.com");
    echo($dom->textContent);

    /**
     * @param string $url
     *  
     * @return DOMDocument
     */
    function loadHtmlFromWeb($url) {
         $curl = curl_init() ) {
         curl_setopt($curl, CURLOPT_URL, $url);
         curl_setopt($curl, CURLOPT_RETURNTRANSFER,true);
         $out = curl_exec($curl);
         curl_close($curl);

         $dom = new DOMDocument();
         if (!empty($out)) {
             $dom->loadHTML($out );
         }
         return $dom;
    }   
?>

答案 1 :(得分:0)

您需要使用实际网址:$dom->loadHTMLFile("http://www.google.com/");