From 44a9199bc02b93ac88897319d01a0fd9c0986a95 Mon Sep 17 00:00:00 2001 From: bn_user Date: Wed, 19 Nov 2025 11:02:27 +0000 Subject: [PATCH] =?UTF-8?q?=D0=9E=D0=B1=D0=BD=D0=BE=D0=B2=D0=B8=D1=82?= =?UTF-8?q?=D1=8C=20dags/OSV.py?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- dags/OSV.py | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/dags/OSV.py b/dags/OSV.py index 77c5c65..348cc29 100644 --- a/dags/OSV.py +++ b/dags/OSV.py @@ -170,6 +170,25 @@ def read_data_1C(**kwargs): display(f" Примеры: {original[failed].head(3).tolist()}") df = df.groupby(group_columns, as_index=False).agg(sum_columns) + + # Преобразуем даты из формата DD.MM.YYYY HH:MM:SS в datetime + date_columns = ['date_begin', 'date_end', 'get_date'] + + for col in date_columns: + if col in df.columns: + # Пробуем разные форматы дат + df[col] = pd.to_datetime(df[col], format='%d.%m.%Y %H:%M:%S', errors='coerce') + + # Если не сработало, пробуем без времени + if df[col].isna().any(): + df[col] = pd.to_datetime(df[col], format='%d.%m.%Y', errors='coerce') + + # Убедимся, что все даты преобразованы + for col in date_columns: + if col in df.columns: + failed_count = df[col].isna().sum() + if failed_count > 0: + print(f" Внимание: в колонке '{col}' осталось {failed_count} некорректных дат") with engine.begin() as conn: