2017-02-25 44 views
1

這是我迄今的代碼。urllib對json的請求與瀏覽器中的json不匹配

url = 'https://www.endomondo.com/rest/v1/users/3014732/workouts/357031682' 

response = urllib.urlopen(url) 
print response 
data = json.load(response) 

print data 

的問題是,當我看到在瀏覽器中JSON是長,並且包含更多的功能,比我看到在印刷時。

更確切地說,我尋找「點」的部分應該是

data['points']['points'] 

然而

data['points'] 

只有2個屬性,並且不包含第二個「點'我確實在瀏覽器的網址中看到。

難道是我只能加載1層「深層」而不是2層?

回答

4

您需要添加一個user-agent到您的請求。

使用requests(其中urllib文檔建議在使用直接urllib),你可以這樣做:

import requests 
url = 'https://www.endomondo.com/rest/v1/users/3014732/workouts/357031682' 
response = requests.get(url, headers={'user-agent': 'Mozilla 5.0'}) 
print(response.json()) 

# long output....