学习如何使用request库和pandas,但即使在网上有大量的例子,也很难越过起点。你知道吗
我正在尝试使用GET请求从下面的URL提取NBA快照数据,然后将其转换为数据帧:
def extractData():
Harden_data_url = "https://stats.nba.com/events/?flag=3&CFID=33&CFPARAMS=2017-18&PlayerID=201935&ContextMeasure=FGA&Season=2017-18§ion=player&sct=hex"
response = requests.get(Harden_data_url)
data = response.json()
shots = data['resultSets'][0]['rowSet']
headers = data['resultSets'][0]['headers']
df = pandas.DataFrame.from_records(shots, columns = headers)
但是,我在第2行“response=请求。获取(网址)
ValueError:无法解码任何JSON对象
我想我错过了一些基本的东西,任何调试帮助是感激的!你知道吗
问题是您在获取数据时使用了错误的URL。你知道吗
您使用的URL是用于HTML的,它负责站点的布局。数据来自不同的URL,它以JSON格式获取数据。你知道吗
您要查找的数据的正确URL如下:
如果在浏览器上运行它,您只能看到原始的JSON数据,这正是您将在代码中获得的数据,并使其正常工作。你知道吗
这篇博文解释了查找数据URL的方法,尽管自撰写博文后API有了一些变化,但该方法仍然有效: http://www.gregreda.com/2015/02/15/web-scraping-finding-the-api/
相关问题 更多 >
编程相关推荐