rolandsz / Mi-Fit-and-Zepp-workout-exporter

A Python script which allows users to export workout data from Mi Fit and Zepp applications.
https://rolandszabo.com/reverse-engineering/mi-fit/export-mi-fit-and-zepp-workout-data
MIT License
132 stars 14 forks source link

Works on linux but not windows #15

Closed daniel11609 closed 1 year ago

daniel11609 commented 1 year ago

when using a error with the path occurs.

INFO:root:There are 200 workouts Traceback (most recent call last): File "E:\Dokumente\projects\Mi-Fit-and-Zepp-workout-exporter\main.py", line 67, in scraper.run() File "E:\Dokumente\projects\Mi-Fit-and-Zepp-workout-exporter\src\scraper.py", line 40, in run self.exporter.export(output_file_path, summary, points) File "E:\Dokumente\projects\Mi-Fit-and-Zepp-workout-exporter\src\exporters\gpx_exporter.py", line 35, in export with open(output_file_path, "w") as fp: ^^^^^^^^^^^^^^^^^^^^^^^^^^^ FileNotFoundError: [Errno 2] No such file or directory: 'workouts\Workout--2022-12-31--02-17-30.gpx' PS E:\Dokumente\projects\Mi-Fit-and-Zepp-workout-exporter>

Fixed it for now by using a linux os

rolandsz commented 1 year ago

Does it work if you create a folder named workouts manually in E:\Dokumente\projects\Mi-Fit-and-Zepp-workout-exporter? Added a debug assertion in 269e2035bb6879fd8980696907d0afa2b9868cab, could you please check if it's triggered on Windows?

daniel11609 commented 1 year ago

Already tried to create at manually. Did not fix it. Can test your changes later.

daniel11609 commented 1 year ago

@rolandsz Just a quick question, is there any info on the type ids, probably all activities which do not include gps data?

ERROR:src.exporters.gpx_exporter:Unhandled type for workout

The following types are showing the error. 8, 14, 16, 22, 52, 67

rolandsz commented 1 year ago

Not really - you can try matching the problematic workout with the workout in the app (by date, length of activity, etc.) and extend the mapping at https://github.com/rolandsz/Mi-Fit-and-Zepp-workout-exporter/blob/master/src/exporters/gpx_exporter.py#L21. In https://github.com/rolandsz/Mi-Fit-and-Zepp-workout-exporter/issues/14#issuecomment-1328032283 there are some mappings, including 52.

daniel11609 commented 1 year ago

so currently only run, hike, ride works? I might have a look if I got some time.

rolandsz commented 1 year ago

The export should work with all kinds of workouts, but they won't have a proper type set, so if you import them to Strava for example it won't be able to determine the type of the activities automatically.

daniel11609 commented 1 year ago

testing on Windows 10, Python 3.9.1 Fresh clone, the folder "workouts" was created automatically now.

PS F:\Dokumente\projects\Mi-Fit-and-Zepp-workout-exporter> python main.py -t -TOKEN- INFO:root:Fetching more summaries starting from workout INFO:root:Fetching more summaries starting from workout INFO:root:Fetching more summaries starting from workout INFO:root:Fetching more summaries starting from workout INFO:root:There are 879 workouts in total INFO:src.scraper:Downloaded workouts\Workout--.gpx ERROR:src.exporters.gpx_exporter:Unhandled type for workout : 52

daniel11609 commented 1 year ago

The export should work with all kinds of workouts, but they won't have a proper type set, so if you import them to Strava for example it won't be able to determine the type of the activities automatically.

Okay let me check if all of the detected workouts got downloaded. Yes, all of them are inside the folder.

I really appreciate the support ;)

daniel11609 commented 1 year ago

can be closed.