jQuery .load没有加载带有趣字符的URL

时间:2015-01-12 13:34:03

标签: jquery

有一个包含以下代码行的PHP文件:

<?php echo file_get_contents($_GET['url']); ?>

包含我尝试加载的网址的HTML是:

<div id="result"></div>

我使用的脚本是:

$(function(){
var contentURI= 'http://www.expedia.com/Hotel-Search?#&destination=London%20%28and%20vicinity%29,%20England,%20United%20Kingdom&startDate=01/15/2015&endDate=01/16/2015&regionId=178279&adults=2';    // URL TO GRAB + # of any desired element // if needed :)
$('#result').load('grabber.php?url='+ contentURI);
});

我想要做的是从Expedia获取具有特定日期范围/位置的酒店 - 问题是页面加载正常,但酒店结果不是......

我做错了什么?

1 个答案:

答案 0 :(得分:0)

他们的网页使用AJAX单独加载酒店,因此您无法像这样获取整个页面。

你唯一能做的就是&#34;劫持&#34;他们的API调用并重新创建页面上的数据。这将是非常困难和烦人的(请参阅下面的链接),并且可能在任何一天他们决定改变他们的API或他们决定阻止跨域访问。

查看他们使用的数据格式:http://www.expedia.com/ws/HotelSearchWebService/v1/opaqueDealsRequest?destinationName=London+(and+vicinity)&startDate=01%2F15%2F2015&endDate=01%2F16%2F2015&response=json

而这只是他们正在使用的少数人之一。