recon_login.py 964 B

1234567891011121314151617181920212223242526272829
  1. """
  2. Reconnaissance: Login page investigation.
  3. """
  4. from playwright.sync_api import sync_playwright
  5. import time
  6. BASE_URL = "http://localhost:80"
  7. with sync_playwright() as p:
  8. browser = p.chromium.launch(headless=True)
  9. page = browser.new_page(viewport={"width": 1440, "height": 900})
  10. page.goto(f"{BASE_URL}/login", wait_until="networkidle", timeout=30000)
  11. page.wait_for_timeout(2000)
  12. page.screenshot(path="/tmp/crm-e2e-screenshots/login-page.png")
  13. print(f"URL: {page.url}")
  14. print(f"Title: {page.title()}")
  15. inputs = page.locator("input").all()
  16. for i, inp in enumerate(inputs):
  17. print(f" input[{i}]: type={inp.get_attribute('type') or ''} placeholder={inp.get_attribute('placeholder') or ''} visible={inp.is_visible()}")
  18. buttons = page.locator("button").all()
  19. for i, btn in enumerate(buttons):
  20. if btn.is_visible():
  21. print(f" button[{i}]: text={btn.text_content()[:50]}")
  22. browser.close()