import base64
import requests
USERNAME, PASSWORD = 'notworking', 'notworking'
def send_request():
# Request
try:
response = requests.get(
url="https://api.mysportsfeeds.com/v1.1/pull/nhl/2017-2018-regular/cumulative_player_stats.{format}",
params={
"fordate": "20171009"
},
headers={
"Authorization": "Basic " +
base64.b64encode('{}:{}'.format(USERNAME,PASSWORD)\
.encode('utf-8')).decode('ascii')
}
)
print('Response HTTP Status Code: {status_code}'.format(
status_code=response.status_code))
print('Response HTTP Response Body: {content}'.format(
content=response.content))
except requests.exceptions.RequestException:
print('HTTP Request failed')
该代码允许我从mysportsfeeds.com提取数据。最后,我需要获取send_request
函数的输出,并将其格式化为.xlsx
文件中的openpyxl
库。我不知道哪种格式最容易处理,即csv
或json
格式的输出。
优秀的website会告诉您如何获得cumulate_player_stats
的输出。
例如,
https://api.mysportsfeeds.com/v1.1/pull/nhl/2016-2017-regular/cumulative_player_stats.{format}
其中{format}
为csv
或json
问题:
什么是更好的选择:以csv
格式ou json
格式输出,以便它可以与openpyxl
lib一起使用?是否有人能够向我展示如何使用csv
(使用csv
库)和json
(使用json
库)使用openpyxl
?< / p>
答案 0 :(得分:0)
Excel是基于行的文件格式。这将建议CSV,它是基于行的。但是CSV文件是纯文本的,这意味着它们不包含类型信息,您必须猜测“9/10/17”是指10月9日(20)17,9月10日(20)17,简称“9” / 10 / 17" 。
JSON至少是类型,但需要一次性读入内存。假设它只是一个列表列表,那么它可能是最好的选择,因为Excel工作表不能超过一百万行。