예제 #1
0
def fetch_world_details():
    try:
        DATA = send_request(WORLD_API)
        # match data according global parser object
        WORLD_DETAILS = {}
        WORLD_DETAILS['state'] = "World"
        WORLD_DETAILS['lastupdatedtime'] = time.strftime(
            '%d/%H/%Y %H:%M',
            time.gmtime(DATA['updated']/1000)
        )
        WORLD_DETAILS['confirmed'] = DATA['cases']
        WORLD_DETAILS['active'] = DATA['active']
        WORLD_DETAILS['recovered'] = DATA['recovered']
        WORLD_DETAILS['deaths'] = DATA['deaths']

        WORLD_DETAILS['deltaconfirmed'] = DATA['todayCases']
        WORLD_DETAILS['detlaactive'] = 0
        WORLD_DETAILS['deltarecovered'] = 0
        WORLD_DETAILS['deltadeaths'] = DATA['todayDeaths']

        WORLD_DETAILS['affectedCountries'] = DATA['affectedCountries']

        return WORLD_DETAILS

    except Exception as e:
        return None
예제 #2
0
def fetch_country_details(country):
    try:
        COUNTRIES_DATA = send_request(COUNTRIES_API)

        DATA = {}
        for COUNTRY_DATA in COUNTRIES_DATA:
            if COUNTRY_DATA['country'].lower() == country.lower():
                DATA = COUNTRY_DATA
                break

            if 'countryInfo' in COUNTRY_DATA:
                if 'iso2' in COUNTRY_DATA['countryInfo'] and \
                   COUNTRY_DATA['countryInfo']['iso2'] is not None:
                    if COUNTRY_DATA['countryInfo']['iso2'].lower(
                    ) == country.lower():
                        DATA = COUNTRY_DATA
                        break

                if 'iso3' in COUNTRY_DATA['countryInfo'] and \
                   COUNTRY_DATA['countryInfo']['iso3'] is not None:
                    if COUNTRY_DATA['countryInfo']['iso3'].lower(
                    ) == country.lower():
                        DATA = COUNTRY_DATA
                        break

        COUNTRY_DETAILS = {}
        COUNTRY_DETAILS['state'] = DATA['country']
        COUNTRY_DETAILS['lastupdatedtime'] = time.strftime(
            '%d/%H/%Y %H:%M', time.gmtime(DATA['updated'] / 1000))
        COUNTRY_DETAILS['confirmed'] = DATA['cases']
        COUNTRY_DETAILS['active'] = DATA['active']
        COUNTRY_DETAILS['recovered'] = DATA['recovered']
        COUNTRY_DETAILS['deaths'] = DATA['deaths']

        COUNTRY_DETAILS['deltaconfirmed'] = DATA['todayCases']
        COUNTRY_DETAILS['detlaactive'] = 0
        COUNTRY_DETAILS['deltarecovered'] = 0
        COUNTRY_DETAILS['deltadeaths'] = DATA['todayDeaths']

        COUNTRY_DETAILS['critical'] = DATA['critical']

        return COUNTRY_DETAILS

    except Exception as e:
        return None
예제 #3
0
def fetch_india_status(state=False):
    try:
        DATA = send_request(DATA_API)

        if not state:
            # for India stateName is Total
            state = "Total"
        elif state.lower() == "all":
            # if data for every state requested
            return DATA['statewise'][1:]

        for details in DATA['statewise']:
            if details['state'].lower() == state.lower() or \
               details['statecode'].upper() == state.upper():
                return details

    except Exception as e:
        return None
예제 #4
0
import requests

from covid19 import helpers

# api.covid19india.org
DATA_API = "https://api.covid19india.org/data.json"
DISTRICT_WISE_API = "https://api.covid19india.org/state_district_wise.json"

# NovelCovid/API for all world
WORLD_API = "https://corona.lmao.ninja/v2/all"
COUNTRIES_API = "https://corona.lmao.ninja/v2/countries"

STATE_CODES = []
COUNTRY_CODES = []

DATA = helpers.send_request(DATA_API)
if DATA:
    for details in DATA['statewise']:
        STATE = [details['state'], details['statecode']]
        STATE_CODES.append(STATE)

# print(STATE_CODES)

COUNTRIES_DATA = helpers.send_request(COUNTRIES_API)
if COUNTRIES_DATA:
    for COUNTRY_DATA in COUNTRIES_DATA:
        COUNTRY = []
        COUNTRY.append(COUNTRY_DATA['country'])

        if 'countryInfo' in COUNTRY_DATA:
            if 'iso2' in COUNTRY_DATA['countryInfo'] and \