0

我想向 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);

非常感谢。

4

1 回答 1

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)

哦,在你刮之前一定要问他们。由于他们失去业务,因此通常很难刮。

于 2013-06-29T22:54:12.100 回答