import mysql.connector
from playwright.sync_api import sync_playwright
import sys

# --- KONFIGURACE ---
DB_CONFIG = {
    'host': 'localhost',
    'user': 'adenira',
    'password': '7*RYnhz4bS2J@7',
    'database': 'adeniraImporter'
}

URL_TEST = "https://www.seznam.cz/"
SELEKTOR_TEPLOTY = "span.atm-weather-item__temp-value"

def ulozit_do_db(hodnota):
    try:
        conn = mysql.connector.connect(**DB_CONFIG)
        cursor = conn.cursor()
        query = "INSERT INTO data_z_webu (hodnota) VALUES (%s)"
        cursor.execute(query, (hodnota,))
        conn.commit()
        cursor.close()
        conn.close()
        print(f"Uloženo: {hodnota}°C")
    except Exception as e:
        print(f"Chyba DB: {e}")
        sys.exit(1)

def spustit_jednou():
    with sync_playwright() as p:
        # Použijeme launch bez parametrů pro standardní Chromium
        browser = p.chromium.launch(headless=True)
        page = browser.new_page()
        try:
            page.goto(URL_TEST, timeout=60000)
            # Nečekáme na "visible", ale jen na to, aby prvek existoval v DOM (kódu)
            prvek = page.locator(SELEKTOR_TEPLOTY).first
            prvek.wait_for(state="attached", timeout=20000)
            
            # Vytáhneme text, i kdyby byl prvek "schovaný"
            hodnota = prvek.text_content().strip()

            ulozit_do_db(hodnota)
        except Exception as e:
            print(f"Chyba při scrapování: {e}")
            sys.exit(1)
        finally:
            browser.close()

if __name__ == "__main__":
    spustit_jednou()