未找到XHR请求返回页面

时间:2015-12-15 01:10:29

标签: python json xmlhttprequest

以下是我用来将XHR请求的结果作为Python对象引入的一些代码的简化版本:

import requests

url = 'http://www.whoscored.com/tournamentsfeed/12496/Fixtures/?d=2015W33&isAggregate=false'
url = ''.join(url)

headers = {'User-Agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_4) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/36.0.1985.125 Safari/537.36',
'X-Requested-With': 'XMLHttpRequest',
'Host': 'www.whoscored.com',
'Referer': 'http://www.whoscored.com/'}

response = requests.get(url,headers=headers)
print response.text

调用XHR的网页是:

http://www.whoscored.com/Regions/252/Tournaments/2/England-Premier-League

当您从页面顶部的日历中选择匹配日期时,会生成XHR请求,如Google Chrome开发者工具中所示。如果右键单击Developer Tools中生成的链接以在新选项卡中打开,则会在新选项卡中打开JSON对象。

如果我尝试使用上面的代码以编程方式执行此操作,response.text将显示为:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">

<html>

<head>

<meta http-equiv="content-type" content="text/html; charset=utf-8" /> 

<meta http-equiv="content-language" content="en" />

<title>WhoScored.com</title>

</head>

<body style="padding: 20px; font-family:Arial,Helvetica,sans-serif; background-color:#222222;">

    <div style="margin:0 auto; padding: 40px 20px; width:560px; background-color:#fff;">

        The page you requested does not exist in <a href="http://www.whoscored.com">WhoScored.com</a>

    </div>

</body>

</html>

此站点的XHR请求格式最近发生了变化,要求我进行一些重新编码,但我不确定为什么我不能再使用上面的代码获取JSON对象。

有什么想法吗?

0 个答案:

没有答案