diff --git a/downloader.py b/downloader.py index 7ada086..13dfbb6 100644 --- a/downloader.py +++ b/downloader.py @@ -66,6 +66,12 @@ def _goto_with_retry(context: BrowserContext, page: Page, url: str, retries: int def login(context: BrowserContext, page: Page) -> Page: logger.info("Logging in to Backblaze...") page = _goto_with_retry(context, page, f"{BASE_URL}/user_signin.htm") + if "user_signin" not in page.url: + logger.info("Already authenticated; skipping login form.") + return page + if page.locator("#email-field").count() == 0: + logger.info("Login form not present; assuming authenticated session.") + return page page.wait_for_selector("#email-field", timeout=30000) page.fill("#email-field", Config.BACKBLAZE_EMAIL) page.click("#submit-button")