コード例 #1
0
def dailyCases(datajson):
    month = {
        'January': '01',
        'February': '02',
        'March': '03',
        'April': '04',
        'May': '05',
        'June': '06'
    }
    for key in datajson['cases_time_series']:
        try:
            y = 2020
            d, m = key['date'].strip().split(' ')
            #latestDay = "{0}/{1}/{2}".format(d,month[m],y)
            announcedate = (datetime.datetime(int(y), int(month[m]), int(d), 0,
                                              0).strftime('%s')) + "000000000"
            totalactive = int(key['totalconfirmed']) - int(
                key['totalrecovered']) - int(key['totaldeceased'])
            postQuery = "{0} dailyconfirmed={1},dailyrecovered={2},dailydeceased={3},totalconfirmed={4},totalactive={5},totalrecovered={6},totaldeceased={7} {8}".format(
                table, key['dailyconfirmed'], key['dailyrecovered'],
                key['dailydeceased'], key['totalconfirmed'], totalactive,
                key['totalrecovered'], key['totaldeceased'], announcedate)
            #print(postQuery)
            influx.Post(db, postQuery)
        except Exception as e:
            print(e)
            sys.exit(1)
コード例 #2
0
def dataProcess(datajson):
    #state_dict = {'JammuandKashmir' : 'JammuKashmir', 'DadraandNagarHaveli' : 'DadraNagarHaveli', 'AndamanandNicobarIslands' : 'AndamanNicobar'}
    state_dict = {
        'Jammu_and_Kashmir': 'Jammu_Kashmir',
        'Dadra_and_Nagar_Haveli': 'Dadra_Nagar_Haveli',
        'Andaman_and_Nicobar_Islands': 'Andaman_Nicobar'
    }
    for key in datajson['states_tested_data']:
        try:
            if key['totaltested'] != "":
                #statename = '_'.join(key['state'].split(' '))
                #statename = ''.join(key['state'].split(' '))
                #if statename in state_dict.keys():
                #	state = state_dict[statename]
                #else:
                #	state = statename
                state = '\ '.join(key['state'].strip().split(' '))

                d, m, y = key['updatedon'].split('/')
                date = (datetime.datetime(int(y), int(m), int(d), 0,
                                          0).strftime('%s')) + "000000000"
                postQuery = "{0},state={1} sampleTestsdone={2} {3}".format(
                    table, state, key['totaltested'], int(date))
                influx.Post(db, postQuery)
        except Exception as e:
            print(e)
            sys.exit(1)
コード例 #3
0
def totalTests(datajson):
    yesterday = (datetime.datetime.now() -
                 datetime.timedelta(days=1)).strftime("%d/%m")
    for key in datajson['tested']:
        try:
            if yesterday in key['updatetimestamp']:
                postQuery = "{0} totalsamplestested={1}".format(
                    table, key['totalsamplestested'])
                influx.Post(db, postQuery)
        except Exception as e:
            print(e)
            sys.exit(1)
コード例 #4
0
def dailyCases(datajson):
    month = {'January': '01', 'February': '02', 'March': '03', 'April': '04'}
    for key in datajson['cases_time_series']:
        try:
            y = 2020
            d, m = key['date'].strip().split(' ')
            announcedate = (datetime.datetime(int(y), int(month[m]), int(d), 0,
                                              0).strftime('%s')) + "000000000"
            dailyactive = int(key['dailyconfirmed']) - int(
                key['dailyrecovered']) - int(key['dailydeceased'])
            postQuery = "{0} dailyactive={1},dailyrecovered={2},dailydeceased={3} {4}".format(
                table, dailyactive, key['dailyrecovered'],
                key['dailydeceased'], announcedate)
            influx.Post(db, postQuery)
        except Exception as e:
            print(e)
            sys.exit(1)
コード例 #5
0
def dataProcess():
    startHr = 1
    flag = 0
    FH = open('/mnt/covid/deathRecoverdata', 'r')
    for line1 in FH:
        try:
            line = line1.replace('#', '')
            city = 'Details_Awaited'
            district = 'Details_Awaited'
            state = 'Details_Awaited'
            statecode = 'Details_Awaited'
            pArray = line.split(',')
            if pArray[4] != "" and pArray[1] != "Date" and pArray[7] not in [
                    'Kerala/Puducherry?'
            ]:
                flag += 1
                startHr += 1
                if startHr > 23:
                    startHr = 1
                d, m, y = pArray[1].split('/')
                date = (datetime.datetime(int(y), int(m), int(d), startHr,
                                          0).strftime('%s')) + "000000000"
                if pArray[5] != "":
                    city = '_'.join(pArray[5].split(' '))
                if pArray[6] != "":
                    district = '_'.join(pArray[6].split(' '))
                if pArray[7] != "":
                    #### Condition due to wrong data in sheet 159 line in recovery sheet
                    state = '_'.join(pArray[7].split(' '))
                    if state == "Hyderabad":
                        state = 'Andhra_Pradesh'
                        district = 'Hyderabad'
                if pArray[8] != "":
                    statecode = '_'.join(pArray[8].split(' '))
                postQuery = "{0},city={1},detecteddistrict={2},detectedstate={3},statecode={4} {5}=1".format(
                    table, city, district, state, statecode, pArray[4])
                if int(d) == int(
                        datetime.datetime.now().day) and int(m) == int(
                            datetime.datetime.now().month):
                    postQuery = postQuery + ",new{0}=1".format(pArray[4])
                postQuery = postQuery + " {0}".format(int(date) + flag)

                influx.Post(db, postQuery)
        except Exception as e:
            print(e)
            sys.exit(1)
コード例 #6
0
def state_district_wise(datajson, zonejson):

    color = {'Green': 1, 'Orange': 3, 'Red': 5}
    zoneDict = {}
    for key in zonejson['zones']:
        if key['zone'] != '':
            zoneDict[key['district']] = key['zone']

    for key in datajson.keys():
        try:
            for key2 in datajson[key]['districtData']:
                if key2 in zoneDict.keys():
                    zonecode = color[zoneDict[key2]]
                else:
                    zonecode = 7

                state = '\ '.join(key.strip().split(' '))
                district = '_'.join(key2.split(' '))

                active = abs(datajson[key]['districtData'][key2]['active'])
                confirmed = abs(
                    datajson[key]['districtData'][key2]['confirmed'])
                deceased = abs(datajson[key]['districtData'][key2]['deceased'])
                recovered = abs(
                    datajson[key]['districtData'][key2]['recovered'])
                deltaconfirmed = abs(
                    datajson[key]['districtData'][key2]['delta']['confirmed'])
                deltadeaths = abs(
                    datajson[key]['districtData'][key2]['delta']['deceased'])
                deltarecovered = abs(
                    datajson[key]['districtData'][key2]['delta']['recovered'])

                if state != 'Delhi':
                    postQuery = '{0},state={1},district={2} district=\"{3}\",dactive={4},dconfirmed={5},ddeaths={6},drecovered={7},ddeltaconfirmed={8},ddeltadeaths={9},ddeltarecovered={10},zone={11}'.format(
                        table, state, district, key2, active, confirmed,
                        deceased, recovered, deltaconfirmed, deltadeaths,
                        deltarecovered, zonecode)
                    #print(postQuery)
                    influx.Post(db, postQuery)
        except Exception as e:
            print(e)
            sys.exit(1)
コード例 #7
0
def dataProcess(textdata):
    startHr = 1
    flag = 0
    for line1 in textdata.split('\n'):
        try:
            line = line1.replace('#', '')
            city = 'UnKnown'
            district = 'UnKnown'
            state = 'UnKnown'
            #pDict = {'city' : 5, 'b_district' : 6, 'a_state' : 7}
            pArray = line.split(',')
            if pArray[4] != "" and pArray[1] != "Date" and pArray[7] not in [
                    'Kerala/Puducherry?'
            ]:
                flag += 1
                startHr += 1
                if startHr > 23:
                    startHr = 1
                d, m, y = pArray[1].split('/')
                date = (datetime.datetime(int(y), int(m), int(d), startHr,
                                          0).strftime('%s')) + "000000000"
                if pArray[5] != "":
                    city = '_'.join(pArray[5].split(' '))
                if pArray[6] != "":
                    district = '_'.join(pArray[6].split(' '))
                if pArray[7] != "":
                    state = '_'.join(pArray[7].split(' '))

                #postQuery = "{0},city={1},bdistrict={2},state={3} {4}=1".format(table,city,district,state,pArray[4])
                postQuery = "{0},city={1},bdistrict={2},detectedstate={3} {4}=1".format(
                    table, city, district, state, pArray[4])
                if int(d) == int(
                        datetime.datetime.now().day) and int(m) == int(
                            datetime.datetime.now().month):
                    postQuery = postQuery + ",new{0}=1".format(pArray[4])
                postQuery = postQuery + " {0}".format(int(date) + flag)

                influx.Post(db, postQuery)
        except Exception as e:
            print(e)
            sys.exit(1)
コード例 #8
0
import influx

### Variables ####
url = "https://docs.google.com/spreadsheets/d/e/2PACX-1vSc_2y5N0I67wDU38DjDh35IZSIS30rQf7_NYZhtYYGU1jJYT6_kDx4YpF-qw0LSlGsBYP8pqM_a1Pd/pub?output=csv&gid=200733542"
db = sys.argv[1]
table = 'covid_india'

dummyData = [
    'Assam', 'Jharkhand', 'Andaman_and_Nicobar_Islands', 'Arunachal_Pradesh',
    'Chandigarh', 'Chhattisgarh', 'Dadra_and_Nagar_Haveli', 'Goa', 'Ladakh',
    'Manipur', 'Uttarakhand', 'Tripura', 'Puducherry', 'Mizoram'
]
for case in ['Recovered', 'Deceased']:
    for state in dummyData:
        postQuery = "{0},detectedstate={1} {2}=0".format(table, state, case)
        influx.Post(db, postQuery)

#for case in ['newConfirmed', 'newRecovered','newDeceased']:
#	postQuery = "{0},detectedstate=Arunachal_Pradesh {1}=0".format(table,case)
#	influx.Post(db,postQuery)


def dataProcess(textdata):
    startHr = 1
    flag = 0
    for line1 in textdata.split('\n'):
        try:
            line = line1.replace('#', '')
            city = 'UnKnown'
            district = 'UnKnown'
            state = 'UnKnown'
コード例 #9
0
				patientDict[k] = '_'.join(patient[k].split(' '))
		if flag != 0:
			if patientDict['detectedstate'] in ['Kerala/Puducherry','Details_Awaited']:
				continue 
				#print(patientDict['detectedstate'])

			totalConfirm += 1
			startHr += 1
			if startHr > 23:
				startHr = 1

			d,m,y = patient['dateannounced'].split('/')
			announcedate = (datetime.datetime(int(y), int(m), int(d), startHr, 0).strftime('%s')) + "000000000"

			for k,v in  patientDict.items():
				postQuery = "{0},{1}={2}".format(postQuery,k,v)

			if int(d) == int(datetime.datetime.now().day) and int(m) == int(datetime.datetime.now().month):
				postData = "{0} Confirmed=1,NewConfirmed=1 {1}".format(postQuery,int(announcedate) + totalConfirm)
			else:
				postData = "{0} Confirmed=1 {1}".format(postQuery,int(announcedate) + totalConfirm)
			
			influx.Post(db,postData)
	except Exception as e:
		print(e)

for k,v in ages.items():
	postQuery="{0},age_bracket={1} count={2}".format(table,k,v)
	influx.Post(db,postQuery)	

コード例 #10
0
def statewise(datajson):
    state_dict = {
        'Jammu_and_Kashmir': 'Jammu_Kashmir',
        'Dadra_and_Nagar_Haveli': 'Dadra_Nagar_Haveli',
        'Andaman_and_Nicobar_Islands': 'Andaman_Nicobar'
    }
    for key in datajson['statewise']:
        try:
            if key['state'] != 'Total':
                state = '\ '.join(key['state'].strip().split(' '))

                if int(key['deltadeaths']) < 0:
                    key['deltadeaths'] = 0
                    print(key['deltadeaths'])

                if int(key['deltaconfirmed']) != 0 or int(
                        key['deltarecovered']) != 0 or int(
                            key['deltadeaths']) != 0:
                    if int(key['deltaconfirmed']) > 0:
                        postQuery = "{0},state={1} homedeltaconfirmed={2},homedeltadeaths={3},homedeltarecovered={4}".format(
                            table, state, key['deltaconfirmed'],
                            key['deltadeaths'], key['deltarecovered'])
                        influx.Post(db, postQuery)
                        #print(postQuery)
                if key['state'] == 'Delhi':
                    postQuery = "{0},state={1},district=Delhi district=\"{2}\",ddeltaconfirmed={3},ddeltadeaths={4},ddeltarecovered={5},sactive={6},sconfirmed={7},sdeaths={8},srecovered={9},sdeltaconfirmed={10},sdeltadeaths={11},sdeltarecovered={12},dactive={13},drecovered={14},ddeaths={15}".format(
                        table, state, 'Delhi', key['deltaconfirmed'],
                        key['deltadeaths'], key['deltarecovered'],
                        key['active'], key['confirmed'], key['deaths'],
                        key['recovered'], key['deltaconfirmed'],
                        key['deltadeaths'], key['deltarecovered'],
                        key['active'], key['recovered'], key['deaths'])
                    #print(postQuery)
                    influx.Post(db, postQuery)
                else:
                    postQuery = "{0},state={1} sactive={2},sconfirmed={3},sdeaths={4},srecovered={5},sdeltaconfirmed={6},sdeltadeaths={7},sdeltarecovered={8}".format(
                        table, state, key['active'], key['confirmed'],
                        key['deaths'], key['recovered'], key['deltaconfirmed'],
                        key['deltadeaths'], key['deltarecovered'])
                    influx.Post(db, postQuery)

                ### put data for state graph
                y = 2020
                d = int(datetime.datetime.now().day)
                m = int(datetime.datetime.now().month)
                announcedate = (datetime.datetime(
                    int(y), int(m), int(d), 0, 0).strftime('%s')) + "000000000"
                activeindicator = int(key['deltaconfirmed']) - int(
                    key['deltadeaths']) - int(key['deltarecovered'])
                postQuery = "{0},state={1} sgconfirmed={2},sgrecovered={3},sgdeaths={4},sgactiveindicator={5} {6}".format(
                    table, state, key['deltaconfirmed'], key['deltarecovered'],
                    key['deltadeaths'], activeindicator, announcedate)
                influx.Post(db, postQuery)
            else:
                y = 2020
                d, m, rest = key['lastupdatedtime'].strip().split('/')
                announcedate = (datetime.datetime(
                    int(y), int(m), int(d), 0, 0).strftime('%s')) + "000000000"

                postQuery = "{0} dailyconfirmed={1},dailyrecovered={2},dailydeceased={3},totalconfirmed={4},totalactive={5},totalrecovered={6},totaldeceased={7} {8}".format(
                    table, key['deltaconfirmed'], key['deltarecovered'],
                    key['deltadeaths'], key['confirmed'], key['active'],
                    key['recovered'], key['deaths'], announcedate)
                influx.Post(db, postQuery)
                #print(postQuery)
        except Exception as e:
            print(e)
            sys.exit(1)