33 lines
1.0 KiB
Python
33 lines
1.0 KiB
Python
"""Debug: capture all errors in detail."""
|
|
from playwright.sync_api import sync_playwright
|
|
|
|
with sync_playwright() as p:
|
|
browser = p.chromium.launch(headless=True)
|
|
page = browser.new_page(viewport={"width": 1920, "height": 1080})
|
|
|
|
logs = []
|
|
page.on("console", lambda msg: logs.append(f"[{msg.type}] {msg.text}"))
|
|
page.on("pageerror", lambda err: logs.append(f"[PAGE_ERROR] {err.message}"))
|
|
|
|
# Intercept all failed requests
|
|
def on_response(response):
|
|
if response.status >= 400:
|
|
logs.append(f"[HTTP_ERROR] {response.status} {response.url}")
|
|
page.on("response", on_response)
|
|
|
|
page.goto("http://localhost:5173/", wait_until="domcontentloaded")
|
|
page.wait_for_timeout(8000)
|
|
|
|
print(f"URL: {page.url}")
|
|
|
|
# Get full page HTML
|
|
html = page.evaluate("document.documentElement.outerHTML")
|
|
# Print first 3000 chars
|
|
print(f"\nHTML (first 3000):\n{html[:3000]}")
|
|
|
|
print(f"\nAll logs ({len(logs)}):")
|
|
for log in logs:
|
|
print(f" {log}")
|
|
|
|
browser.close()
|