2014-11-06 70 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