LY233NXOGRAT5I6L5XG6JGM6SJQWYXIIAFMTHJRQFFB7XF6AH66QC 6E5ZZNS5HEZY3INKALW5PFER26K7H7HNVALBCNPE34KQPWRDOLZQC M7GEEQZA7MEVVBT2G4WFKZ7THPVM3ML3MVWHBK5DZ5JBVJCL4CSAC RNHBTG23XBZEWM6W6ZBQGLDUMGH74NKUORUEATD2Y4AQY4QXXCVAC PVDK3SJ75IKLO5M4WH6Y5EOKP4I5PSQBUKJWA5K25HRO7HI536EQC BDHZ3KKWECPDK4K2AIJK24OCMBTNRMHI2HZEZ7QCVD4PCRFKYIZQC QUBL4AG3IUUZG4SRXYXA25FW75TPLCU2YUK7YT2PUD5HVRSOYSSAC UEMLM7XK4TAKNYTPVOIVUIVHAGM3WQ43UZS5RXXX737HMC56OVSQC NQQINJY7GYQBCMVMSVVNOHHDZRSXDB4H7QYK2RHC7SD66L7RODWQC import jsonimport gspread as gsfrom oauth2client.client import SignedJwtAssertionCredentialsfrom calendar import month_namedef upload_to_spread_sheet(p_name, spreadsheet, month, cells_time): # cells_time= {cells_row: time}print("Syncing: \n" + str(cells_time) + "...")json_key = json.load(open('cred-ptc.json'))credentials = SignedJwtAssertionCredentials(json_key['client_email'],bytes(json_key['private_key'], 'utf-8'),json_key['scope'])print('Authenticating....')gc = gs.authorize(credentials)print('opening your sheet...')sheet = gc.open(spreadsheet)month_sheet = sheet.worksheet(month_name[month])rows_left = len(cells_time)for (row, value) in cells_time.items():print("Writing value in row number: " + row)print(str(rows_left) + " items left.")rows_left -= 1# update startmonth_sheet.update_acell('B' + row, '00:00:00')# update endmonth_sheet.update_acell('c' + row, value)print('finished writing')
return str(total_time)def sync(p_name='supermarket', spreadsheet='WorkSheet', month=Time.date()):all_logs = FileManager.read('logs/{}'.format(p_name))month_days = set([log['date'] for log in all_logs if log.get('date', None) != None andint(log.get('date').split('-')[1]) == 6])cells_time = {}for day_date in month_days:cell_row = str(int(day_date.split('-')[2]) + 1) # we start from 2 not 1cells_time.update({cell_row: get_time_for_certain_day(p_name, date=day_date)})month = int(month.split('-')[1])return upload_to_spread_sheet(p_name=p_name, spreadsheet=spreadsheet, month=month, cells_time=cells_time)