2012-06-20 58 views
1

我寫了這個函數來解析html源代碼,但由於某種原因,它不適用於feedburner飼料。有任何想法嗎?php:獲取feedburner飼料的內容

$dom = new DOMDocument(); 
$dom->loadHTMLFile('http://www.killington.com/winter/mountain/conditions'); 
$xml = simplexml_import_dom($dom); 
$snow = $xml->xpath('//td'); 

我真正需要做的只是從頁面獲取數據。

+0

您需要解析的內容Feed自己(http://feeds.feedburner.com/KillingtonSnowReport)或從t創建Feed帽子頁面? –

+0

我想要做的就是從feed中獲取數據並創建一個json數組。所以基本上我試圖採取開放的路線數量並將該數字存儲在變量中 –

回答

1

不知道除了這不是一個飼料的網頁事實之外的問題。這就是說,因爲使用DOM文檔的youre世界上沒有理由用SimpleXML打擾,並且可能是問題的根源所在進來......

$dom = new DOMDocument(); 
$dom->loadHTMLFile('http://www.killington.com/winter/mountain/conditions'); 
$xpath = new DOMXPath($dom); 
$snow = $xpath->query('//td'); 
+0

我的代碼中使用的網址有效,但出於某種原因,如果我使用以下網址:feed://feeds.feedburner.com/ KillingtonSnowReport?format = xml它不返回任何內容。 –

+0

那麼,因爲沒有飼料中的任何'td'元素...你看看XML來看看你正在解析什麼????? – prodigitalson

+0

是的,我很懶,並複製了原始http url的代碼,我嘗試使用不同的標籤行,這些標籤行在feed上的xml中,但沒有起作用 –

1

首先,你必須打開進料頁面(在XML之一,例如),並檢查它是哪一種飼料:

<rss xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" version="2.0"> 

然後,你看看像這樣很好的教程:http://net.tutsplus.com/articles/news/how-to-read-an-rss-feed-with-php-screencast/,你幾乎已經完成了:)

+1

這行代碼是做什麼的?我認爲問題可能是因爲feedburner可能使用不同的端口,而不是http –

+0

這行代碼是您可以在feed的xml頁面中找到的許多代碼之一。這只是一個提示您如何着手獲取提要的提示。爲什麼?因爲有很多類型的Feed,每個Feed都有不同的標籤,所以你必須用不同的方式解析它:) –

+0

我希望你知道,這個僅用鏈接的答案根本沒有幫助......因爲鏈接文章沒有提到命名空間或如何處理它們。 –