-
-
Save devalls/f82eaaa6d3b7f15a1c16fbdc388eb88e to your computer and use it in GitHub Desktop.
Download all workouts from sports-tracker
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// 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 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/
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Tks @KonstantinosSykas the update URL.
Tks @hannta the update to fit.
these make me successful download my workouts. thank you all!!!