[30388f42] Infrastructure Hardening: Repaired CE/Connector DB schema, fixed frontend styling build, implemented robust echo shield in worker v2.1.1, and integrated Lead Engine into gateway.
This commit is contained in:
50
ARCHIVE_legacy_scripts/debug_screenshot.py
Normal file
50
ARCHIVE_legacy_scripts/debug_screenshot.py
Normal file
@@ -0,0 +1,50 @@
|
||||
import asyncio
|
||||
import os
|
||||
import logging
|
||||
from pyppeteer import launch
|
||||
|
||||
logging.basicConfig(level=logging.INFO, format='%(asctime)s - %(levelname)s - %(message)s')
|
||||
|
||||
# Token direkt aus der Umgebungsvariable holen
|
||||
HA_TOKEN = os.environ.get("HA_ACCESS_TOKEN")
|
||||
|
||||
# URL wird dynamisch mit dem Token zusammengesetzt
|
||||
HA_URL = f"http://192.168.178.131:8123/lovelace/solar?kiosk&auth_callback=1&access_token={HA_TOKEN}"
|
||||
OUTPUT_FILE = "/screenshots/final_screenshot.png"
|
||||
|
||||
async def main():
|
||||
if not HA_TOKEN:
|
||||
logging.error("Fehler: Umgebungsvariable HA_ACCESS_TOKEN nicht gefunden!")
|
||||
return
|
||||
|
||||
logging.info("Starte Puppeteer-Browser...")
|
||||
browser = await launch(
|
||||
executablePath='/usr/bin/chromium',
|
||||
headless=True,
|
||||
args=['--no-sandbox', '--disable-setuid-sandbox']
|
||||
)
|
||||
|
||||
page = await browser.newPage()
|
||||
await page.setViewport({'width': 1280, 'height': 1024})
|
||||
|
||||
try:
|
||||
logging.info(f"Navigiere direkt zur authentifizierten URL...")
|
||||
await page.goto(HA_URL, {'waitUntil': 'networkidle0', 'timeout': 60000})
|
||||
|
||||
logging.info("Seite geladen. Warte 15 Sekunden auf das finale Rendering...")
|
||||
await asyncio.sleep(15)
|
||||
|
||||
logging.info("Erstelle Screenshot...")
|
||||
await page.screenshot({'path': OUTPUT_FILE})
|
||||
logging.info(f"Screenshot erfolgreich unter {OUTPUT_FILE} gespeichert.")
|
||||
|
||||
except Exception as e:
|
||||
logging.error(f"Ein Fehler ist aufgetreten: {e}", exc_info=True)
|
||||
await page.screenshot({'path': '/screenshots/debug_error_final.png'})
|
||||
|
||||
finally:
|
||||
logging.info("Schließe Browser.")
|
||||
await browser.close()
|
||||
|
||||
if __name__ == '__main__':
|
||||
asyncio.run(main())
|
||||
Reference in New Issue
Block a user