From 5b81f51e41537c6d8eec080d7cd66a60d9f5927a Mon Sep 17 00:00:00 2001 From: Sander Roosendaal Date: Mon, 12 Nov 2018 22:22:55 +0100 Subject: [PATCH] importing power from Strava --- rowers/stravastuff.py | 16 ++++++++++++++-- 1 file changed, 14 insertions(+), 2 deletions(-) diff --git a/rowers/stravastuff.py b/rowers/stravastuff.py index 32587db8..0017f38f 100644 --- a/rowers/stravastuff.py +++ b/rowers/stravastuff.py @@ -248,7 +248,7 @@ def get_workout(user,stravaid): velojson = get_strava_stream(r,'velocity_smooth',stravaid) distancejson = get_strava_stream(r,'distance',stravaid) latlongjson = get_strava_stream(r,'latlng',stravaid) - + powerjson = get_strava_stream(r,'power',stravaid) try: @@ -269,6 +269,11 @@ def get_workout(user,stravaid): except: spm = np.zeros(nr_rows) + try: + power = np.array(powerjson.json()[1]['data']) + except IndexError: + power = np.zeros(nr_rows) + try: hr = np.array(hrjson.json()[1]['data']) except IndexError: @@ -315,6 +320,7 @@ def get_workout(user,stravaid): 'hr':hr, 'lat':lat, 'lon':lon, + 'power':power, 'strokelength':strokelength, }) @@ -494,7 +500,13 @@ def add_workout_from_data(user,importid,data,strokedata, velo = 500./pace - power = 2.8*velo**3 + try: + power = strokedata.ix[:,'power'] + except KeyError: + power = 2.8*velo**3 + + if power.std() == 0 and power.mean() == 0: + power = 2.8*velo**3 # save csv # Create data frame with all necessary data to write to csv