Last active
June 4, 2022 12:02
-
-
Save dubeyji10/f53406ba0e41ad6ada34e29f7c2e81c2 to your computer and use it in GitHub Desktop.
insert into leads table from leads get response to API call
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
import json | |
import mysql.connector | |
from mysql.connector import Error | |
import time | |
''' | |
inserting data into local db test_export_genius_2 | |
''' | |
leads_Path = 'changeOwners/leadsSecondSanbox_1.json' | |
jsonLead = None | |
with open(leads_Path,'r') as leads: | |
jsonLead = json.loads(leads.read()) | |
# print(jsonLead) | |
print('----------------------------------\n1.') | |
# print(jsonLead['data'][0],'\n2.') | |
# print(jsonLead['data'][1],'\n\n3.') | |
# print(jsonLead['data'][2],'\n\n\n4.') | |
# print(jsonLead['data'][3]) | |
# for i in jsonLead['data'][0]: | |
# print(i , ' : ',jsonLead['data'][0][i]) | |
q = "INSERT INTO leads (local_id,client_id, added_on , user_id , requirement ,lead_source) VALUES ({} , {} , {} , {} , {} , {})" | |
# print(q.format('ads',7.42121,'123')) | |
# lead_data = [ i for i in jsonLead['data']] | |
''' | |
It is non-pythonic to manually index via for i in range(len(xs)): x = xs[i] | |
or manually manage an additional state variable. | |
''' | |
# just a temp counter if none then assign local_id_counter +=1121 any number | |
local_id_counter = 1234 | |
user_id = 'nitisha70701' | |
for index,item in enumerate(jsonLead['data']): | |
print('at index {} :\n'.format(index)) | |
# print('Owner : {}'.format(item['Owner'])) | |
added_on = item['added_on'] | |
if added_on == None: | |
added_on = "2014-01-05 11:11:11" | |
else: | |
added_on = added_on.replace('T',' ') | |
added_on = added_on[:19] | |
client_id = item['client_id'] | |
local_id = item['local_id'] | |
if local_id == None: | |
local_id = local_id_counter | |
client_id = local_id_counter | |
local_id_counter+=21312 | |
else: | |
local_id = int(local_id) + local_id_counter | |
# just some noise to local_id so doesn't match with real data | |
lead_source = item['source'] | |
requirement = item['requirement'] | |
if lead_source == None: | |
lead_source = "Cold Call" | |
requirement = "a dummy requirement #{}".format(local_id_counter) | |
print('added_on : {}'.format(added_on)) | |
print('local_id : {}'.format(local_id)) | |
print('client_id : {}'.format(client_id)) | |
print('user_id : ',user_id) | |
print('requirement : {}'.format(requirement)) | |
print('lead_source : {}'.format(lead_source)) | |
# local_id,client_id, added_on , user_id , requirement ,lead_source | |
valueList = (local_id,client_id, added_on , user_id , requirement ,lead_source) | |
with mysql.connector.connect() as connectPointer: | |
print('connected : ',connectPointer.is_connected()) | |
with connectPointer.cursor() as aCursor: | |
print('running : ') | |
query = 'INSERT INTO leads (id , client_id, added_on , user_id , requirement ,lead_source) VALUES ({0[0]},{0[1]},"{0[2]}","{0[3]}","{0[4]}","{0[5]}")'.format(valueList) | |
print(query) | |
aCursor.execute(query) | |
aCursor.close() | |
connectPointer.commit() | |
print('-inserted-') | |
time.sleep(1) | |
print('-'*50) | |
# for i in lead_data: | |
# print(q.format(i[0],i[1],i[2])) | |
# print(' .................... ') |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment