获取URL使用curl或json进行回答

时间:2012-12-17 19:24:37

标签: php javascript curl

我需要得到一个页面的答案。 网址如下所示:

sp2.looki.de/index.php?page=newsysview&cid=48713&ppx=71&ppy=32&cid=48713&tcv=1355771664807&_=_585_204

我得到的答案看起来像这样:

  

{ “模块”: “系统”, “错误”:[], “syslist”:{ “15”:{ “CON1”: “0”, “CON2”: “0”, “KGM”:” 257506" , “KGK”: “317370”, “KGT”: “10300255”, “PPX”: “71”, “PPY”: “32”, “PPZ”: “15”, “pname中”: “Ckaleme” “playerid”: “5428”, “标志”: “1”, “小白”: “85315748”, “sperrflag”: “ - 1”, “尼克”: “S7alker”, “标签”:“ - R- “ ”PID“: ”707“, ”allianzid“: ”707“, ”inaktiv“:1, ”platz0“: ”82“, ”punkte0“: ”187044480“, ”platz1“: ”196“,” punkte1 “:” 21326785" , “platz2”: “87”, “punkte2”: “105724483”, “platz3”: “69”, “punkte3”: “59993212”, “oldlogin”:NULL, “nickdays”:“0 ”, “isnoob”:假}}, “tflist”:[], “PPX”:71, “PPY”:32, “allianzid”:3225, “allianzpid”:3225, “调试”:{ “分析时”: [{ “Name”: “开始”, “parsetime_complete”: “0.000”, “parsetime_last”: “0.000”},{ “名”: “恩德”, “parsetime_complete”: “0.014”, “parsetime_last”:“0.014 “}],” parsetime_total “:” 0.014" , “querytime”:0.0026}}

我尝试过使用CURL,file_get_contents等等......但答案只是一个

  

WWW:重定向


代码编辑....没有结果

$data  = "http://some.site.de/index.php?page=newsysview&cid=48713&ppx=50&ppy=50&cid=48713&tcv=1355426935816&_=_552_140";
$ch = curl_init($data);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
curl_exec($ch);
curl_close($ch);

页面 - > http://sp2.looki.de/index.php?page=newsysview&cid=48713&ppx=50&ppy=50&cid=48713&tcv=1355511915397&_=_482_292

我得到一个json作为答案

所以......经过几天的尝试后,我再也没有想法了。 不知道,如何登录,跳转到指定页面并从那里读取json。 也许有人有一个好主意来帮助我。 登录页面在这里 - > http://sp2.looki.de/

:'(

编辑2

我卡住了......

我现在有以下代码......

$data1 = "http://sp2.looki.de/index.php?page=newsysview&cid=48713&ppx=50&ppy=50&cid=48713&tcv=1355511915397&_=_482_292";
$ch = curl_init ($data1);
curl_setopt ($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt ($ch, CURLINFO_HEADER_OUT, true);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
$data = curl_exec ($ch);

在我的var_dump($data)中,它只是一个{"www-redirect": "/"}

为什么?

哦....提示:

原始地址为:http://sp2.looki.de/index.php?page=gui&cid=666#nothing

$ data1中的地址似乎是一个ajax请求。

1 个答案:

答案 0 :(得分:1)

确保您的卷曲请求中有“关注位置”处于活动状态:

curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);

否则您强制它不遵循“位置:”标题

http://php.net/manual/es/function.curl-setopt.php

此外,也许网站不允许直接查询该网址,尝试使用curl的“Referer”值来欺骗它

curl_setopt($ch, CURLOPT_REFERER, 'http://some.site.de/');