php发送获取请求并获取输出

时间:2013-06-29 22:46:29

标签: php curl get request

我想向www.seatguru.com申请getrequest,例如:http://www.seatguru.com/findseatmap/findseatmap.php?airlinetext=American+Airlines&carrier=AA&flightno=3180&from=Philadelphia%2C+PA+-+Philadelphia+International+Airport+%28PHL%29&to=&date=07%2F03%2F2013&from_loc=PHL&to_loc=&search_type=

问题在于,当我收到请求时,它只显示“正在加载...”,这意味着我可以检查输出。有什么方法可以解决这个问题吗?

这是我的卷曲:

$qry_str = "?airlinetext=American+Airlines&carrier=AA&flightno=3180&from=Philadelphia%2C+PA+-+Philadelphia+International+Airport+%28PHL%29&to=&date=07%2F03%2F2013&from_loc=PHL&to_loc=&search_type=";
$ch = curl_init();

// Set query data here with the URL
curl_setopt($ch, CURLOPT_URL, 'http://www.seatguru.com/findseatmap/findseatmap.php' . $qry_str); 

curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_TIMEOUT, '3');
$content = trim(curl_exec($ch));
curl_close($ch);

非常感谢。

1 个答案:

答案 0 :(得分:2)

这种情况正在发生,因为结果实际上是通过ajax加载的。因此,当页面加载时,结果不存在,您会看到加载标志。您可以通过查询页面用于获取结果的URL来解决此问题。理想情况下,您可以在文档检查器(Chrome / FF Firebug)中搜索XHR请求,并为相关请求进行排序,但是我为您完成了工作。

http://www.seatguru.com/ajax/findseatmap.php?from=PHL&to=&flightno=3180&carrier=AA&date=07%2F03%2F2013

(注意findseatmap之前url中的ajax)

哦,在你刮之前确实问过他们。由于失去业务,它通常很难刮掉。