用Python编写的opendiseaseapi的异步包装器。

disease.p的Python项目详细描述


在疾病.py在

Open Disease API的官方Python包装器。以前是corona-api。在

要求

  • Python 3.5或更高版本
  • aiohttp(python3 -m pip install -U aiohttp

安装

使用pip(推荐)

  • python3 -m pip install -U disease.py

导入就和import diseaseapi一样简单。在

支持

在我们的official serverDisease.sh server上获得对不一致的支持。在

基本用途

importdiseaseapiimportasyncioclient=diseaseapi.Client()covid=client.covid19# for influenza, use: influenza = client.influenzaasyncdefmain():data=awaitcovid.all()print(data.cases,data.today.cases,data.deaths,data.today.deaths)awaitclient.request_client.close()asyncio.get_event_loop().run_until_complete(main())

Covid方法中的可选参数

ParameterSupported methodsAccepted values
^{}- ^{}- ^{}- ^{}- ^{}- ^{}- ^{}- ^{}- ^{}- ^{}
^{}- ^{}- ^{}- ^{}- ^{}- ^{}- ^{}- ^{}
^{}- ^{}- ^{}- ^{}Depends on the endpoint used. Consult the API documentation to see which endpoints support which parameters.
^{}- ^{}- ^{}- ^{}- ^{}- ^{}- ^{}- ^{}- ^{}- ^{}- ^{}

示例

以下示例介绍了库的基本用法及其各种特性。 注意:许多方法还支持yesterday=Truesort='sort method'和{}kwargs来获取前一天的数据或按各种参数排序。参考上表,找出哪些是做的,哪些是不做的。在

不和谐机器人

这里有一个不和谐机器人的齿轮示例here。在

基础数据

全球数据

^{pr2}$

特定国家的数据

importdiseaseapiimportasyncioclient=diseaseapi.Client().covid19asyncdefget_country():data=awaitclient.country_data('UK')#get data for the UK today,print(data.cases,data.deaths)#print the number of cases and deaths for the UKawaitclient.request_client.close()#close the ClientSessionasyncio.get_event_loop().run_until_complete(get_country())

不止一个国家的数据

importdiseaseapiimportasyncioclient=diseaseapi.Client().covid19asyncdefget_countries():data=awaitclient.country('UK','USA','China')#get data for specified countries#to get data for every country supported, use:  all_countries()print(data)#prints a list of Countryawaitclient.request_client.close()#close the ClientSessionasyncio.get_event_loop().run_until_complete(get_countries())

美国各州

特定状态的数据

importdiseaseapiimportasyncioclient=diseaseapi.Client().covid19asyncdefget_state():data=awaitclient.state('Ohio')#get data for Ohio today,print(data.cases,data.deaths)#print the number of cases and deaths for Ohioawaitclient.request_client.close()#close the ClientSessionasyncio.get_event_loop().run_until_complete(get_state())

多个状态的数据

importdiseaseapiimportasyncioclient=diseaseapi.Client().covid19asyncdefget_states():data=awaitclient.state('Ohio','California','Texas')#get data for specified states#to get data for every state supported, use:  all_states()print(data)#prints a list of Stateawaitclient.request_client.close()#close the ClientSessionasyncio.get_event_loop().run_until_complete(get_states())

历史统计

全球历史数据

importdiseaseapiimportasyncioclient=diseaseapi.Client().covid19asyncdefget_history():data=awaitclient.country_history('all','all')#get all the historical data for the worldprint(data.name,data.history.cases[0].date,data.history.cases[0].value)#print name (in this case 'Global'), the date of the first entry, and the number of cases for that dateawaitclient.request_client.close()#close the ClientSessionasyncio.get_event_loop().run_until_complete(get_history())

一个国家的历史数据

importdiseaseapiimportasyncioclient=diseaseapi.Client().covid19asyncdefget_history():data=awaitclient.country_history('UK',7)#get the past week of historical data for the UKprint(data.name,data.history.cases[0].date,data.history.cases[0].value)#print name, the date of the first entry, and the number of cases for that dateawaitclient.request_client.close()#close the ClientSessionasyncio.get_event_loop().run_until_complete(get_history())

省历史数据

importdiseaseapiimportasyncioclient=diseaseapi.Client().covid19asyncdefget_history_province():data=awaitclient.province_history('UK','Gibraltar',7)#get the past week of historical data for Gibraltar, UKprint(data.province,data.history.cases[0].date,data.history.deaths[0].value)#print province name, the date of the first entry, and the number of cases for that dateawaitclient.request_client.close()#close the ClientSessionasyncio.get_event_loop().run_until_complete(get_history_province())

美国州内郡的历史数据

importdiseaseapiimportasyncioclient=diseaseapi.Client().covid19asyncdefget_county():data=awaitclient.county_history('Ohio','Adams')#get all historical data for Adams, Ohio, USAprint(data.name,data.province,data.history.cases[0].date,data.history.cases[0].value)#print state and county name, the date of the first entry, and the number of cases for that dateawaitclient.request_client.close()#close the ClientSessionasyncio.get_event_loop().run_until_complete(get_county())

约翰霍普金斯大学

来自JHU CSSE的所有数据

importdiseaseapiimportasyncioclient=diseaseapi.Client().covid19asyncdefget_jhu():data=awaitclient.jhucsse()#get data for every province and country JHU supportsprint(data)#print a long list of JhuCsseawaitclient.request_client.close()#close the ClientSessionasyncio.get_event_loop().run_until_complete(get_jhu())

美国州内郡的数据

importdiseaseapiimportasyncioclient=diseaseapi.Client().covid19asyncdefget_jhu_county():data=awaitclient.jhu_county('Ohio','Adams')#get data for Adams, Ohioprint(data.province_name,data.county_name,data.confirmed_cases)#print the state, county and case numberawaitclient.request_client.close()#close the ClientSessionasyncio.get_event_loop().run_until_complete(get_jhu_county())

美国每个县的数据

importdiseaseapiimportasyncioclient=diseaseapi.Client().covid19asyncdefget_jhu_counties():data=awaitclient.jhu_all_counties()print(data)#print a long list of JhuCsseawaitclient.request_client.close()#close the ClientSessionasyncio.get_event_loop().run_until_complete(get_jhu_counties())

大陆数据

各大洲的数据

importdiseaseapiimportasyncioclient=diseaseapi.Client().covid19asyncdefget_conts():data=awaitclient.all_continents()first=data[0]print(first.name,first.cases,first.deaths)#print some info for the first continent in the listawaitclient.request_client.close()#close the ClientSessionasyncio.get_event_loop().run_until_complete(get_conts())

单个大陆的数据

importdiseaseapiimportasyncioclient=diseaseapi.Client().covid19asyncdefget_one_cont():data=awaitclient.continent('Europe')print(data.name,data.cases,data.deaths)#print some info for the specified continentawaitclient.request_client.close()#close the ClientSessionasyncio.get_event_loop().run_until_complete(get_one_cont())

纽约时报

来自纽约时报的美国数据

importdiseaseapiimportasyncioclient=diseaseapi.Client().covid19asyncdefget_nyt_us():data=awaitclient.nyt()first=data[0]print(first.date,first.cases,first.deaths)#print first piece of dataawaitclient.request_client.close()#close the ClientSessionasyncio.get_event_loop().run_until_complete(get_nyt_us())

纽约时报的所有美国州数据

importdiseaseapiimportasyncioclient=diseaseapi.Client().covid19asyncdefget_nyt_states():data=awaitclient.nyt_states()first=data[0]print(first.state,first.date,first.cases)#print some data from the frst elementawaitclient.request_client.close()#close the ClientSessionasyncio.get_event_loop().run_until_complete(get_nyt_states())

纽约时报单州数据

importdiseaseapiimportasyncioclient=diseaseapi.Client().covid19asyncdefget_nyt_state():data=awaitclient.nyt_state('Ohio')first=date[0]print(first.date,first.cases,first.deaths)#print the first date, and case/death numberawaitclient.request_client.close()#close the ClientSessionasyncio.get_event_loop().run_until_complete(get_nyt_state())

纽约时报的每个郡

importdiseaseapiimportasyncioclient=diseaseapi.Client().covid19asyncdefget_counts():data=awaitclient.nyt_counties()first=data[0]print(first.date,first.cases,first.deaths)#print part of the first piece of dataawaitclient.request_client.close()#close the ClientSessionasyncio.get_event_loop().run_until_complete(get_counts())

纽约时报按名称筛选的县

importdiseaseapiimportasyncioclient=diseaseapi.Client().covid19asyncdefget_one_county():data=awaitclient.nyt_county('Adams')first=data[0]print(first.date,first.cases,first.deaths)#print part of the first piece of dataawaitclient.request_client.close()#close the ClientSessionasyncio.get_event_loop().run_until_complete(get_one_county())

苹果移动

苹果移动数据支持的每个国家

^{pr21}$

苹果移动

importdiseaseapiimportasyncioclient=diseaseapi.Client().covid19asyncdefget_subregions():data=awaitclient.apple_subregions('UK')print(data.subregions)#print all supported subregions within the countryawaitclient.request_client.close()#close the ClientSessionasyncio.get_event_loop().run_until_complete(get_subregions())

苹果公司的次区域移动数据

importdiseaseapiimportasyncioclient=diseaseapi.Client().covid19asyncdefget_one_sub():data=awaitclient.apple_mobility_data('UK','London')first=data.statistics[0]print(first.date,first.name,first.driving)#print some data about the first resultawaitclient.request_client.close()#close the ClientSessionasyncio.get_event_loop().run_until_complete(get_one_sub())

政府数据

政府数据API支持的所有国家

importdiseaseapiimportasyncioclient=diseaseapi.Client().covid19asyncdefget_gov_countries():data=awaitclient.gov_countries()print(data)#print the supported countriesawaitclient.request_client.close()#close the ClientSessionasyncio.get_event_loop().run_until_complete(get_gov_countries())

从一个国家的政府网站获取数据

importdiseaseapiimportasyncioclient=diseaseapi.Client().covid19asyncdefget_country_gov():data=awaitclient.gov('UK')print(data)#probably will return a large amount of dict data.awaitclient.request_client.close()#close the ClientSessionasyncio.get_event_loop().run_until_complete(get_country_gov())

注意

由于每个国家的政府/官方统计网站不同(布局、表格等),因此不可能为数据创建一个标准化的类。但是,重新生成的数据将采用标准JSON格式,因此它应该相对简单。在

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java如何向类添加适用于该类中所有对象的单个@XmlAttribute注释   java未处理的继续记录跟踪类org。阿帕奇。波伊。hssf。记录塔比德雷科德   Eclipse中java代码的rest连接超时,而不是浏览器的rest连接超时   数组我的Java插入排序逻辑有什么问题?   java使用Http客户端进行请求,该请求返回内容类型为“application/vnd.msexcel”的jsp页面   java连接到数据库(Derby)   url编码如何使用java发布而不使用url编码url的查询部分   正则表达式使用Java替换字符串中的模式   Java中声明数组的区别   java hibernate ReferenceColumnNames未映射到单个属性   java如何对地图集合的分层键进行排序?   java ValueAnimator在我的手机上似乎工作不正常   java如何使用Hibernate Lucene搜索访问实体中外键的排序字段名?   在同一台机器上以不同的JAVA路径运行两个Tomcat   java如何在Eclipse中记录最新的git提交哈希?   java为什么我必须将JRE、编译器和facet全部降级为Java1。8在Eclipse中创建简单Web服务时   无法将java DataBufferInt解析为类型