我尝试使用Python的Requests库从request.get()的调用中获取JSON对象:
import requests
url = 'http://stats.nba.com/stats/boxscoretraditionalv2'+\
'?EndPeriod=10&EndRange=28800&GameID=0021500893&RangeType=0'+\
'&Season=2015-16&SeasonType=Regular+Season&StartPeriod=1'+\
'&StartRange=0'
# is the auth necessary?
response = requests.get(url, auth=('user', 'pass'))
我得到以下例外:
Traceback (most recent call last):
File "sample.py", line 22, in <module>
response.raise_for_status() # raise exception if invalid response
File "/Library/Python/2.7/site-packages/requests/models.py", line 840, in raise_for_status
raise HTTPError(http_error_msg, response=self)
requests.exceptions.HTTPError: 400 Client Error: Bad Request for url: http://stats.nba.com/stats/boxscoretraditionalv2?EndPeriod=10&EndRange=28800&GameID=0021500893&RangeType=0&Season=2015-16&SeasonType=Regular+Season&StartPeriod=1&StartRange=0
为了解决这个问题,我需要做什么?该链接有效 - 它只是呈现JSON,如果通过Chrome查看,则返回200 OK。
答案 0 :(得分:0)
为您的请求添加标题:
C#
NBA.com的管理员决定在没有看起来像普通浏览器的用户代理的情况下向用户发放HTTP 400(可能是为了减少抓取)。