- 
      
- 
        Save devalls/f82eaaa6d3b7f15a1c16fbdc388eb88e to your computer and use it in GitHub Desktop. 
| // based entirely on this blog post: | |
| // http://druss.co/2016/04/export-all-workouts-from-sports-tracker/ | |
| // unfortunately the original script no longer works, moslty because jQuery is | |
| // no longer available on sports-tracker pages. | |
| // | |
| // I've compiled the changes proposed in the comments in the script below. | |
| // to use the script, login to your sports-tracker account | |
| // change URL to http://www.sports-tracker.com/diary/workout-list | |
| // open browser console (Cmd-Shift-I) | |
| // paste the script, hit enter - it'll run and print something like this to the cosole: | |
| // curl -o SportsTracker-<..id..>.gpx "http://www.sports-tracker.com/apiserver....." | |
| // right-click on the colsole and save the contents to a file, call it download-all-workouts.sh | |
| // open terminal, change to the directory where you saved the contents of the console | |
| // edit the file - remove the javascript at the beginning of the file leaving only curl commands | |
| // fix permissions: | |
| // $>chmod +x download-all-workouts.sh | |
| // run the script: | |
| // $>./download-all-workouts.sh | |
| var key = "sessionkey="; | |
| var valueStartIndex = document.cookie.indexOf(key) + key.length; | |
| var token = document.cookie.substring(valueStartIndex, document.cookie.indexOf(';', valueStartIndex)); | |
| function downloadOne(item) { | |
| var href = item.href; | |
| var id = href.substr(href.lastIndexOf('/') + 1, 24); | |
| var url = 'http://www.sports-tracker.com/apiserver/v1/workout/exportGpx/' + id + '?token=' + token; | |
| var filename = 'SportsTracker-' + id + '.gpx'; | |
| console.log('curl -o ' + filename + ' "' + url + '";sleep 2'); | |
| } | |
| function loopThroughItems(items) | |
| { | |
| var i = 0; | |
| for (i = 0; i < items.length; i++) { | |
| downloadOne(items[i]); | |
| } | |
| } | |
| var items = document.querySelectorAll("ul.diary-list__workouts li a"); | |
| document.body.innerHtml = ''; | |
| loopThroughItems(items); | |
I must edit curl command with L param like this curl -L -o  ...
Some updates:
- The API server name has changed to api.sports-tracker.com.
- I have come up with some code to add the activity type and date in the exported filename.
On that matter, I forked the code here to include these two updates.
The above was tested successfully (with @hannta's variation for .fit export) on Win10/PowerShell with Chrome.
That was the problem I was having. Thanks @adamjak
Tks @KonstantinosSykas  the update URL.
Tks @hannta the update to fit.
these make me successful download my workouts. thank you all!!!
I fixed some bugs and added activity images downloading:
https://gist.github.com/Bilan/33770ecb8160ee1a79864bd3d37c0f03
The "Download-all-workouts.sh" is Linux, right? Anyone knows of a way to do this in Windows? Found/tried a utility called STExport.exe and can't get it to work.... I'm out of options....
https://docs.microsoft.com/de-de/windows/wsl/install-win10
and than do this for access the generated files:
https://www.howtogeek.com/261383/how-to-access-your-ubuntu-bash-files-in-windows-and-your-windows-system-drive-in-bash/
Btw. you can get
.fitfiles if you change url tohttp://www.sports-tracker.com/apiserver/v1/workout/exportFit/and the filename accordingly.At least for me,
.fitfiles works better when moving data to Strava.