将 HTML 字典转换为 PYTHON 字典

我只需要从此网站列表“ https://coronavirus-19-api.herokuapp.com/countries ”获取捷克国家的并像变量字典一样存储在 ptyhon 中。

像这样:

Czechia = {"cases":434,"todayCases":0,"deaths":0,"todayDeaths":0,"recovered":3,"active":431,"critical":2}


慕村225694
浏览 126回答 3
3回答

收到一只叮咚

您可以使用requests从服务器 URL 获取 JSON 数据,然后构造一个新字典作为country键:from requests import getURL = "https://coronavirus-19-api.herokuapp.com/countries"req = get(URL).json()result = {obj['country']: {k: v for k, v in obj.items() if k != 'country'} for obj in req}print(result)输出:{'China': {'cases': 80894, 'todayCases': 13, 'deaths': 3237, 'todayDeaths': 11, 'recovered': 69614, 'active': 8043, 'critical': 2622}, 'Italy': {'cases': 31506, 'todayCases': 0, 'deaths': 2503, 'todayDeaths': 0, 'recovered': 2941, 'active': 26062, 'critical': 2060}...现在您可以在O(1)时间内访问数据,而不是进行O(N)线性扫描:print(result["Czechia"])# {'cases': 464, 'todayCases': 30, 'deaths': 0, 'todayDeaths': 0, 'recovered': 3, 'active': 461, 'critical': 2}注意:确保req.status_code200 OK 或您期望从服务器收到的任何其他信息也可能是安全的。

慕森卡

只是为您提供了使用 pythonurllib模块的另一种方法。from urllib.request import urlopen##import astimport jsondef Corona_Tracker():    res = urlopen('https://coronavirus-19-api.herokuapp.com/countries')    result = res.read().strip()    result_str = json.loads(result)    return result_strif __name__ == "__main__":    result_str=Corona_Tracker()    while True:        for data in result_str:            if data['country'] == "India":                print(data)只需替换India为您的国家/地区,它就会给出以下输出>>> {'country': 'India', 'cases': 148, 'todayCases': 5, 'deaths': 3, 'todayDeaths': 0, 'recovered': 14, 'active': 131, 'critical': 0}

白衣非少年

In [1]:  import requests   ...:  import json   ...:   ...:  data = requests.get('https://coronavirus-19-api.herokuapp.com/countries').json()   ...:  result = next(item for item in data if item["country"] == "Czechia")   ...:  print(json.dumps(result, indent=4)){    "country": "Czechia",    "cases": 464,    "todayCases": 30,    "deaths": 0,    "todayDeaths": 0,    "recovered": 3,    "active": 461,    "critical": 2}In [2]:
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Html5