From 734b2631f15510a7837fe5ddac45d77dfb748d69 Mon Sep 17 00:00:00 2001 From: Sander Roosendaal Date: Tue, 12 Sep 2017 08:52:41 +0200 Subject: [PATCH] added test if gz file exists + repair - strave export --- rowers/dataprep.py | 5 ++++- rowers/stravastuff.py | 21 ++++++++++++++++++++- 2 files changed, 24 insertions(+), 2 deletions(-) diff --git a/rowers/dataprep.py b/rowers/dataprep.py index b4acbd56..794edec3 100644 --- a/rowers/dataprep.py +++ b/rowers/dataprep.py @@ -568,7 +568,10 @@ def save_workout_database(f2,r,dosmooth=True,workouttype='rower', workoutdate = row.rowdatetime.strftime('%Y-%m-%d') workoutstarttime = row.rowdatetime.strftime('%H:%M:%S') - workoutstartdatetime = thetimezone.localize(row.rowdatetime).astimezone(utc) + try: + workoutstartdatetime = thetimezone.localize(row.rowdatetime).astimezone(utc) + except ValueError: + workoutstartdatetime = row.rowdatetime if makeprivate: privacy = 'hidden' diff --git a/rowers/stravastuff.py b/rowers/stravastuff.py index c41dfa64..d1e1ac86 100644 --- a/rowers/stravastuff.py +++ b/rowers/stravastuff.py @@ -30,6 +30,8 @@ from rowingdata import rowingdata import pandas as pd from rowers.models import Rower,Workout from rowers.models import checkworkoutuser +import dataprep +from dataprep import columndict import stravalib from stravalib.exc import ActivityUploadFailed,TimeoutExceeded @@ -247,8 +249,25 @@ def get_strava_workout(user,stravaid): # Generate Workout data for Strava (a TCX file) def createstravaworkoutdata(w,dozip=True): filename = w.csvfilename + try: + row = rowingdata(filename) + except IOError: + data = dataprep.read_df_sql(w.id) + try: + datalength = len(data) + except AttributeError: + datalength = 0 - row = rowingdata(filename) + if datalength != 0: + data.rename(columns = columndict,inplace=True) + res = data.to_csv(w.csvfilename+'.gz', + index_label='index', + compression='gzip') + try: + row = rowingdata(filename) + except IOError: + return '','Error - could not find rowing data' + tcxfilename = filename[:-4]+'.tcx' try: newnotes = w.notes+'\n from '+w.workoutsource+' via rowsandall.com'