Python实现实时数据采集新型冠状病毒数据实例

  

Python实时数据采集——新型冠状病毒

  

源代码https://github.com/Programming-With-Love/2019-nCoV

  

疫情数据时间为:2020.2.1

  

 Python实现实时数据采集新型冠状病毒数据实例

  

项目相关截图:

  

全国数据展示

  

 Python实现实时数据采集新型冠状病毒数据实例

  

国内数据展示

  

 Python实现实时数据采集新型冠状病毒数据实例

  

国外数据展示

  

 Python实现实时数据采集新型冠状病毒数据实例

  

查看指定区域详细数据

  

 Python实现实时数据采集新型冠状病毒数据实例

  

源代码,注意安装所需模块(例如pip安装模块名)

        进口的要求      进口再保险      从bs4进口BeautifulSoup      从进口睡眠时间      进口json      从prettytable导入所有      从prettytable进口prettytable            湖北={}      广东={}      浙江={}      北京={}      上海={}      湖南={}      安徽={}      重庆={}      四川={}      山东={}      广西={}      福建={}      江苏={}      河南={}      海南={}      天津={}      江西={}      shanxi1={} #陕西      贵州={}      辽宁={}      香港={}      黑龙江={}      澳门={}      新疆={}      甘肃={}      云南={}      台湾={}      shanxi2={} #山西      吉林={}      河北={}      宁夏={}      内蒙古={}      青海={}#没有      西藏={}#没有      provinces_idx=(湖北、广东、浙江、重庆、湖南、安徽、北京、      上海、河南、广西、山东、江西、江苏、四川、      辽宁、福建、黑龙江、海南、天津、河北、shanxi2,      云南、香港、shanxi1、贵州、吉林、甘肃、台湾、      新疆、宁夏、澳门、内蒙古、青海、西藏)      地图={      “湖北”:0,“广东”:1、“浙江”:2,“北京”:3,“上海”:4,“湖南”:5,“安徽”:6,“重庆”:7,      “山”四川”:8日东的:9,“广西”:10“福建的:11日,“江苏”:12,“河南”:13岁的海南”:14日      “天津”:15日江西”:16日,“陕西”:17日的贵州”:18,“辽宁”:19日,“香港”:20,“黑龙江”:21日      “澳门”:22日的新疆”:23岁的甘肃”:24日,“云南”:25岁的“台湾”:26日,“山西”:27岁的吉林”:28日,      “宁”河北”:29日夏”:30日”内蒙古”:31日的青海”:32岁的西藏”:33      }                  def取得时间(文本):      TitleTime=str(文本)      TitleTime=re.findall (' & lt; span> (* & # 63;) & lt;/span>”, TitleTime)      返回TitleTime [0]            def getAllCountry(文本):      AllCountry=str(文本)      AllCountry=AllCountry.replace (“[& lt; p类=\“confirmedNumber___3WrF5 \”祝辞& lt;跨类=\“content___2hIPS \”在“”、“)      AllCountry=AllCountry.replace (“& lt;跨风格=\”颜色:# 4169 e2 \”在”、“”)      AllCountry=re.sub (“& lt;/span>”、“”,AllCountry)      AllCountry=AllCountry.replace (" & lt;/p>] ", " ")            AllCountry=AllCountry.replace (“& lt;跨风格=\”颜色:rgb(65、105、226); \”在”、“”)      AllCountry=re.sub (“& lt; span>”、“”,AllCountry)      AllCountry=re.sub (“& lt; p>”、“”,AllCountry)      AllCountry=re.sub (“& lt;/p>”、“”,AllCountry)      返回AllCountry            def查询(省):      表=PrettyTable(['地区”,“确诊”,“死亡”,“治”愈])            在province.items (k、v) ():      name=k      表格add_row([名称、v[0]如果[0]!=0”——“,v[1]如果[1]!=0”——“,v[2]如果[2]!其他=0 ','])      如果len (province.keys ()) !=0:      打印(表)      其他:      打印(“暂无”)            def getInfo(文本):      文本=str(文本)      文本=re.sub (“& lt; p类=\”descText___Ui3tV \“在””、“文本)      文本=re.sub (“& lt;/p>”、“”、文本)      返回文本            def is_json (json_str):      试一试:      json.loads (json_str)      除了ValueError:      返回假      还真            def ff (str, num):      返回str (num): + str (num + 1:)                  def main ():      url=" https://3g.dxy.cn/newh6/view/pneumonia "            试一试:      头={}      标题(“用户代理”)=' Mozilla/5.0 (Windows NT 10.0;Win64;AppleWebKit x64)/537.36 (KHTML,像壁虎)Chrome/70.0.3538.77 Safari/537.36 ' # http头大小写不敏感      标题(“接受”)=' text/html、application/xhtml + xml应用程序/xml; q=0.9,图像/webp图像/apng */*; q=0.8 '      头['连接']=拔?      头[' Upgrade-Insecure-Requests ']=' 1 '            r=请求。get (url,标题=标题)      r.raise_for_status ()      r。编码=r.apparent_encoding      汤=BeautifulSoup (r.text lxml的)      表=PrettyTable(['地区”,“确诊”,“死亡”,“治”愈])      表格hrules=所有            # # # #截至时间      # TitleTime=取得时间(soup.select (.title___2d1_B))            print ()      #打印(" ",TitleTime +“\ n”)            而真正的:      r=requests.get (" https://service - f9fjwngp - 1252021671. - bj.apigw.tencentcs.com/release/pneumonia”)      json_str=json.loads (r.text)      如果json_str['错误')==0:      打破            打印(“==================================全国数据==================================")      print ()            打印(“确诊”+ str (json_str(“数据”)(“统计数据”)[' confirmedCount ']) +“例”      + " " + "疑似“+ str (json_str(“数据”)(“统计数据”)[' suspectedCount ']) +“例”      + " " + "死亡" + str (json_str(“数据”)(“统计数据”)[' deadCount ']) +“例”      + " " + "治愈" + str (json_str(“数据”)(“统计数据”)[' curedCount ']) +“例\ n”)            打印(“==================================相关情况==================================")      print ()            打印(“传染源:“+ json_str(“数据”)(“统计数据”)[' infectSource '])      打印(“病毒:“+ json_str(“数据”)(“统计数据”)(“病毒”))      打印(“传播途径:“+ json_str(“数据”)(“统计数据”)(“通道”))      print (json_str(“数据”)(“统计数据”)[' remark1 '])      print (json_str(“数据”)(“统计数据”)(“remark2”) +“\ n”)            null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null

Python实现实时数据采集新型冠状病毒数据实例