2014-11-06 68 views
1

我正在嘗試通過php閱讀aliexpress.com交易頁面。我無法獲得輸出中頁面的詳細信息。無法通過php閱讀aliexpress.com

有沒有一種方法可以得到細節。

以下是代碼。

<?php 
    include('simple_html_dom.php'); 
    $url = 'http://activities.aliexpress.com/superdeals.php'; 
    $xml = file_get_html($url); 
    //$file = 'output1.txt'; 
    $element = $xml; 
    echo $element; 
?> 
+1

完成任何基本的調試?像跳過simplehtml並執行'var_dump(file_get_contents('http:// ....'))'查看原始返回的數據? – 2014-11-06 22:05:19

+0

該頁面由javascript呈現,可能專門用於禁止您嘗試執行的操作。 – cOle2 2014-11-06 22:08:05

回答

0

本網站使用AJAX
解決辦法有兩個:
- 使如JavaScript相同的請求
- 使用一個工具,如Phantomjs

如果你看一下的請求,你會很容易找到那個發出GET請求並以JSON形式返回所有信息。 所以你需要自己找到鏈接或使用第三方庫+工具。

編輯:

您可以使用Web瀏覽器與firebug得到的鏈接(我不給你,因爲我覺得計算器不是那個),或者如果您使用Chrome,在網絡選項卡搜索JSON。

$url = "...."; 
$str = file_get_contents($url); 
if($str) { 
    $json = json_decode($str, true); // json is an array 
    // ... do what you need 
} 

我建議使用curl而不是file_get_contents的原因有很多。

或者你可以用Phantomjs(這是真的比較困難),並獲得「HTML快照」,然後使用DOM或XPATH得到你所需要的,但你必須運行Phantomjs和使用第三方庫與它通信。

+0

謝謝你會嘗試和更新你很快。你有任何相同的代碼示例? – user3138111 2014-11-12 13:35:18