2012-01-04 108 views
1

我正在努力讓我的新網站,我無法找出最好的方式來做一些解析。從php解析網頁

我在做的是試圖解析this網頁的評論(最後3)「最新的」頁面,權限頁面和右欄(與評分等)。

我已經看過parse_url和其他一些方法,但沒有什麼是真正的工作。

任何幫助表示讚賞,例子甚至更好!提前致謝。

+0

我只看到一個來源的評論。 – 2012-01-04 03:50:05

+0

我看到的不止於此,搜索名稱,他們會顯示 – Samuel 2012-01-04 04:09:31

+0

哦,我以爲你的意思是HTML評論。 – 2012-01-04 05:53:43

回答

1

Simple HTML DOM

我使用它,它的效果很好。提供鏈接的樣本。

+0

致命錯誤:調用第36行的/home/content/08/8709208/html/Applications.php中的非對象的成員函數find() – Samuel 2012-01-06 04:58:20

0

PHP SimpleXML擴展是你的朋友在這裏:http://php.net/manual/en/book.simplexml.php

+0

是的,正如下面的@xbonez提到的,你可以通過[fopen()](http://php.net/manual/en/function.fopen.php)或[cURL](http ://php.net/manual/en/book.curl.php)擴展,甚至與[file_get_contents()](http://php.net/manual/en/function.file-get-contents.php)if它是允許的(這不應該是因爲它是潛在的安全威脅)。 – 2012-01-04 03:53:18

1

parse_url解析的實際URL(而不是頁面的URL指向)。

你想要做的就是刮掉它指向的網頁,並從那裏拿起內容。您需要使用fopen,它會爲您提供頁面的HTML源代碼,然後解析HTML並提取您需要的內容。

聲明:刮刮頁面並不總是允許的。

2

我建議使用DOM這項工作,在這裏它是在一個網站來獲取所有的URL的例子:

$doc = new DOMDocument(); 
$doc->loadHTMLFile('http://www.theurlyouwanttoscrape.com'); 

foreach($doc->getElementsByTagName('a') as $item){ 
    $href = $item->getAttribute('href'); 
    var_dump($href); 
}