我刚刚开始对 Raspberry PI 进行编程。 我在提取从 API 获取的信息时遇到问题。
不幸的是,我对Python了解不够,无法解决这个问题。 这是我在网上浏览了几个小时后想到的。
import requests
import json
setname = "xln" #this is the ID of the Set*
cardid = "96" #this is the set specific id of the card*
response_API = requests.get('https://api.scryfall.com/cards/'setname'/'cardid'.json')
data = response_API.text
parse_json = json.loads(data)
card_list = []
for item in json_array:
card_details = {"color_identity":None, "colors":None, "eur":None}
card_details['color_identity'] = item ['color_identity']
card_details['colors'] = item ['colors']
card_details['eur'] = item ['eur']
card_list.append(card_details)
print(card_list)
您的网址无效,因此代码未经过测试!
你可以这样做,但是还有很多其他选项可以在 python 中处理请求和 json 数据。
import json
setname = "xln" #this is the ID of the Set*
cardid = "96" #this is the set specific id of the card*
response_API = requests.get(f'https://api.scryfall.com/cards/{setname}/{cardid}.json')
if response_API.status_code == 200:
data = response_API.json()
assert isinstance(data, list), "response is not a list"
card_list = [
{
'color_identity': x.get('color_identity'),
'colors': x.get('colors'),
'eur': x.get('eur')
} for x in data
]
else:
print('No correct request was made')
print(response_API.content.decode())
f
-字符串,但你的方法也可能有效。None
。 https://docs.python.org/3/tutorial/datastructures.html#list-compressives 和 https://www.w3schools.com/python/ref_dictionary_get.asp