zmieniono print na logging

zmieniono wyjscie cron z pliku na stdout i stderr
This commit is contained in:
2025-11-03 09:05:45 +01:00
parent 85377e9e1a
commit 820db917ce
6 changed files with 39 additions and 29 deletions

View File

@@ -1,3 +1,4 @@
import logging
import gspread
from google.oauth2.service_account import Credentials
@@ -11,7 +12,7 @@ class GSheetAPI:
"""Inicjalizuje klienta API przy tworzeniu obiektu."""
creds = Credentials.from_service_account_file(credentials_file, scopes=SCOPES)
self.client = gspread.authorize(creds)
print("✅ Połączono z Google Sheets API.")
logging.info("✅ Połączono z Google Sheets API.")
def list_sheets(self, doc_name):
"""Zwraca listę arkuszy w danym dokumencie."""
@@ -32,7 +33,7 @@ class GSheetAPI:
try:
ws = spreadsheet.worksheet(sheet_name)
except gspread.exceptions.WorksheetNotFound:
print(f" Tworzę nowy arkusz: {sheet_name}")
logging.info(f" Tworzę nowy arkusz: {sheet_name}")
ws = spreadsheet.add_worksheet(title=sheet_name, rows=100, cols=10)
ws.append_row(["#", "Link", "Nr zamówienia", "Model", "Wykończenie", "Kolor Top", "Kolor Body", "Kolor Neck", "Kolor Head", "Finish K/C", "Finish S"])
return ws
@@ -43,38 +44,35 @@ class GSheetAPI:
których nr zamówienia (kolumna 3) już istnieje.
"""
if not rows_data:
print(" Brak danych do dodania.")
logging.info(" Brak danych do dodania.")
return
ws = self.ensure_worksheet(doc_name, sheet_name)
# 1. Pobierz wszystkie istniejące numery zamówień w JEDNYM zapytaniu
print("🔍 Sprawdzam istniejące numery zamówień w arkuszu docelowym...")
logging.info("🔍 Sprawdzam istniejące numery zamówień w arkuszu docelowym...")
# existing_orders = set(ws.col_values(3))
existing_orders = {str(x).strip() for x in ws.col_values(3)}
print(f"Znaleziono {len(existing_orders)} istniejących numerów.\n existing_orders: {existing_orders}")
logging.debug(f"Znaleziono {len(existing_orders)} istniejących numerów.\n existing_orders: {existing_orders}")
# 2. Filtruj nowe wiersze, aby znaleźć tylko te unikalne
unique_rows_to_add = []
for row in rows_data:
order_number = str(row[2]).strip()
# print(f"order_number: '{order_number}'", end="")
if order_number not in existing_orders:
# print(f" not in existing_order!", end="")
unique_rows_to_add.append(row)
# Dodaj nowo dodany numer do seta, aby uniknąć duplikatów w ramach jednej paczki
existing_orders.add(order_number)
# print(" ")
# 3. Dodaj wszystkie unikalne wiersze w JEDNYM zapytaniu
if unique_rows_to_add:
print(f"📝 Dodaję {len(unique_rows_to_add)} nowych unikalnych wierszy do arkusza {sheet_name}...")
logging.info(f"📝 Dodaję {len(unique_rows_to_add)} nowych unikalnych wierszy do arkusza {sheet_name}...")
ws.append_rows(unique_rows_to_add, value_input_option="USER_ENTERED") # type: ignore
print("✅ Zakończono dodawanie.")
logging.info("✅ Zakończono dodawanie.")
else:
print(" Nie znaleziono żadnych nowych wierszy do dodania.")
logging.info(" Nie znaleziono żadnych nowych wierszy do dodania.")
skipped_count = len(rows_data) - len(unique_rows_to_add)
if skipped_count > 0:
print(f"⏭️ Pominięto {skipped_count} wierszy, które już istniały w arkuszu.")
logging.info(f"⏭️ Pominięto {skipped_count} wierszy, które już istniały w arkuszu.")