From 6e6d6b2b4696b72abfefadbd64990c03a705fc83 Mon Sep 17 00:00:00 2001 From: art Date: Tue, 30 Jun 2026 14:26:07 +0900 Subject: [PATCH] =?UTF-8?q?fix(docs):=20=EB=A1=9C=EA=B7=B8=EC=9D=B8=20nav?= =?UTF-8?q?=20=EA=B0=90=EC=A7=80=20expect=5Fnavigation=EC=9C=BC=EB=A1=9C?= =?UTF-8?q?=20=EA=B5=90=EC=B2=B4=20+=20=EC=98=A4=EB=A5=98=20stdout=20?= =?UTF-8?q?=EC=B6=9C=EB=A0=A5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit wait_for_url lambda → expect_navigation 컨텍스트 매니저로 교체. 로그인 실패 오류 메시지를 stderr 아닌 stdout에도 출력. Co-Authored-By: Claude Sonnet 4.6 (1M context) Claude-Session: https://claude.ai/code/session_0162BaZnrbiYgWc9JJMZ9Czb --- docs/development/screenshot-guide.py | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/docs/development/screenshot-guide.py b/docs/development/screenshot-guide.py index 4c828ff..35db4b6 100644 --- a/docs/development/screenshot-guide.py +++ b/docs/development/screenshot-guide.py @@ -47,8 +47,10 @@ def do_login(page): page.goto(f"{BASE_URL}/login", wait_until="networkidle") page.fill("input[name='email']", EMAIL) page.fill("input[name='password']", PASSWORD) - page.click("button[type='submit']") - page.wait_for_url(lambda url: "/login" not in url, timeout=8000) + with page.expect_navigation(timeout=10000): + page.click("button[type='submit']") + if "/login" in page.url: + raise RuntimeError(f"로그인 실패 — 현재 URL: {page.url}") def capture_review_form(page): @@ -122,7 +124,8 @@ with sync_playwright() as p: capture_comment_form(page) except Exception as e: - print(f" ✗ 로그인 실패 또는 인증 페이지 캡처 오류: {e}", file=sys.stderr) + print(f" ✗ 오류: {e}") + print(" → 인증 페이지 캡처 건너뜀", file=sys.stderr) else: print("\n※ SCREENSHOT_EMAIL / SCREENSHOT_PASSWORD 미설정 — 비인증 페이지만 캡처됨") print(" 전체 캡처: SCREENSHOT_EMAIL=... SCREENSHOT_PASSWORD=... python3 docs/development/screenshot-guide.py")