import requests import json import pandas as pd import API import numpy as np mcDictionaryurl='https://docs.google.com/spreadsheets/d/1I4P7wiCXTAwnld0YQfUJC8bPtuiETna1HGWVuHbuDBk/edit#gid=1080620551' def createDictionary(): DictionaryOfTemplates={ '1.0 substructure': [], '2.1 frames' : [], '2.2 upper floor':[], '2.3 roof':[], '2.4 stairs':[], '2.5 external walls':[], '2.6 external openings':[], '2.7 internal walls':[], '2.8 internal openings':[], '3.1 wall finishes':[], '3.2 floor finishes':[], '3.3 ceiling finishes':[], '4.0 fittings, furnishings and equipments':[], '5.0 services':[], '5.1 sanitary':[], '7.0 works to existing buildings':[], '8.1 site preparation works':[], '8.2 roads, paths, pavings':[], '8.3 soft landscaping':[], '8.4 fencing, railing, walls':[], '8.5 external fixtures':[], '8.6 external drainage':[], '8.7 external services':[], '8.8 minor buildings':[] } return DictionaryOfTemplates def APIValues(): query={"loginname":"Marthe","password":"marthemain"} #token="eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJodHRwOi8vc2NoZW1hcy54bWxzb2FwLm9yZy93cy8yMDA1LzA1L2lkZW50aXR5L2NsYWltcy9uYW1lIjoiQURSIiwibmJmIjoiMTY4MDg1OTgzMyIsImV4cCI6IjE2ODA5MDMwMzMifQ.-FULhKD_M-cyIdSMMIYDlEo9DoZtc00yIlyXIPuyLZI" head={'Content-Type':'application/json'} url = "https://httpbin.org/post" response=requests.post(url="https://console.trevorsadd.co.uk/account/login",json=query,headers=head,verify=False) key=response.text #token generated head={'Content-Type':'application/json;charset=UTF-8',"Authorization":'Bearer {}'.format(key)} data={"pagesize": 1000000000} response=requests.post(url=" https://consoletest.trevorsadd.co.uk/template/getgridview?isarchive=false",json=data,headers=head,verify=False) dict1=response.json() return dict1 def RetrieveMC_Templates_API(): # threading.Timer(600.0,update_df).start() DictionaryOfTemplates=createDictionary() dict1=APIValues() for item in dict1.get('data') : if item.get('section'): section=item.get('section').lower() if section in DictionaryOfTemplates.keys(): if item.get('templatename') not in DictionaryOfTemplates[section]: DictionaryOfTemplates[section].append([item.get('templatename'),item.get('unit')]) # print(json.dumps(DictionaryOfTemplates, indent=4)) # mctoSheets( DictionaryOfTemplates) # print(DictionaryOfTemplates) return DictionaryOfTemplates def mctoSheets( DictionaryOfTemplates): gc=API.AuthorizeGoogleSheets()[2] ws = gc.open_by_key('1I4P7wiCXTAwnld0YQfUJC8bPtuiETna1HGWVuHbuDBk') MC_TNamesSheet=ws.worksheet_by_title('MC-T Names') MC_TNamesSheet.clear() # MC_DF=pd.DataFrame( DictionaryOfTemplates.items()) MC_DF=pd.DataFrame({k: np.ravel(v) for k, v in DictionaryOfTemplates.items()}) #append tables to google sheets MC_TNamesSheet.set_dataframe(start='A1',df=MC_DF)