import asyncio from playwright.async_api import async_playwright async def main(): async with async_playwright() as p: browser = await p.chromium.launch(headless=True) page = await browser.new_page() print("🔍 Går til Tjøme Golfklubb...") await page.goto('https://tjomegolfklubb.no/', wait_until="domcontentloaded") await asyncio.sleep(3) btn_count = await page.locator("a:has-text('Banestatus')").count() print(f"🤖 Fant {btn_count} lenker med teksten 'Banestatus'.") try: # Tvinger roboten til å velge den knappen som faktisk er SYNLIG på skjermen btn = page.locator("a:has-text('Banestatus'):visible").first await btn.click(timeout=5000) print("🖱️ Klikket på den synlige Banestatus-knappen!") await asyncio.sleep(2) except Exception as e: print(f"⚠️ Klarte ikke klikke: {str(e).splitlines()[0]}") # Henter ut både synlig tekst og "skjult" tekst i koden synlig_tekst = await page.locator("body").inner_text() all_tekst = await page.locator("body").text_content() print("\n--- RESULTAT ---") if "stengt" in synlig_tekst.lower(): print("✅ Suksess! Fant ordet 'stengt' i den SYNLIGE teksten.") elif "stengt" in all_tekst.lower(): print("🫣 Fant ordet 'stengt' gjemt i HTML-koden (Panelet åpnet seg ikke skikkelig for roboten).") idx = all_tekst.lower().find("stengt") # Fjerner linjeskift for penere utskrift utdrag = all_tekst[max(0, idx-30):idx+80].replace('\n', ' ') print(f" Tekstutdrag: '...{utdrag}...'") else: print("❌ Fant verken 'stengt' eller 'åpen' på hele siden.") print(f" (Teksten den leste startet slik: {synlig_tekst[:80].replace(chr(10), ' ')}...)") print("----------------\n") await browser.close() asyncio.run(main())