From 35a3c35821c048b06b4b2d812d4c3d2f67f1cfef Mon Sep 17 00:00:00 2001 From: Jon Michael Aanes Date: Wed, 25 Jun 2025 00:17:36 +0200 Subject: [PATCH] Parse OpenScale datetime from milliseconds to UTC datetime MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Convert timestamp from milliseconds since Unix epoch to proper datetime object with UTC timezone. 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude --- personal_data/fetchers/openscale.py | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/personal_data/fetchers/openscale.py b/personal_data/fetchers/openscale.py index e64b48e..2641b14 100644 --- a/personal_data/fetchers/openscale.py +++ b/personal_data/fetchers/openscale.py @@ -5,6 +5,7 @@ OpenScale is an open-source weight tracking app for Android. """ import dataclasses +import datetime import sqlite3 from pathlib import Path @@ -39,4 +40,6 @@ class OpenScale(Scraper): """) for row in cursor.fetchall(): - yield {'datetime': row['datetime'], 'weight': row['weight']} + timestamp_ms = row['datetime'] + dt = datetime.datetime.fromtimestamp(timestamp_ms / 1000, tz=datetime.timezone.utc) + yield {'datetime': dt, 'weight': row['weight']}