fix(login): asteapta randarea Angular SPA inainte de detectia campurilor
Pagina de login s-a mutat la goapp.bancatransilvania.ro (Angular SPA)
care face un API call inainte sa randeze formularul. Inlocuieste
time.sleep(2) cu wait_for_selector('input#user', timeout=15000).
Actualizeaza si numele link-ului din LOGIN in Login.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -465,22 +465,29 @@ class BTGoScraper:
|
|||||||
except:
|
except:
|
||||||
pass
|
pass
|
||||||
|
|
||||||
# Click pe butonul LOGIN - deschide popup
|
# Click pe butonul LOGIN - deschide tab nou
|
||||||
logging.info("Click pe butonul LOGIN...")
|
logging.info("Click pe butonul LOGIN...")
|
||||||
with self.page.expect_popup() as popup_info:
|
with self.page.expect_popup() as popup_info:
|
||||||
login_link = self.page.get_by_role("link", name="LOGIN")
|
login_link = self.page.get_by_role("link", name="Login")
|
||||||
login_link.click()
|
login_link.click()
|
||||||
|
|
||||||
# Preia referinta la popup-ul de login
|
# Preia referinta la tab-ul de login
|
||||||
self.login_page = popup_info.value
|
self.login_page = popup_info.value
|
||||||
logging.info("✓ Popup login deschis")
|
logging.info("Popup/tab login deschis")
|
||||||
|
|
||||||
|
# Asteapta ca Angular SPA sa randeze formularul de login
|
||||||
|
# (goapp.bancatransilvania.ro face un API call inainte de render)
|
||||||
|
logging.info("Astept incarcarea formularului de login...")
|
||||||
|
try:
|
||||||
|
self.login_page.wait_for_selector("input#user", timeout=15000)
|
||||||
|
logging.info("[OK] Formular login incarcat")
|
||||||
|
except Exception:
|
||||||
|
logging.warning(" [WARN] Timeout pe input#user, incerc wait_for_load_state...")
|
||||||
|
self.login_page.wait_for_load_state("networkidle", timeout=15000)
|
||||||
|
|
||||||
# Verifica GDPR cookies si pe popup
|
# Verifica GDPR cookies si pe popup
|
||||||
self._dismiss_gdpr_cookies(self.login_page)
|
self._dismiss_gdpr_cookies(self.login_page)
|
||||||
|
|
||||||
# Asteapta sa se incarce pagina de login
|
|
||||||
time.sleep(2)
|
|
||||||
|
|
||||||
# Screenshot debug pentru a vedea starea paginii
|
# Screenshot debug pentru a vedea starea paginii
|
||||||
debug_path = Path(self.config.OUTPUT_DIR) / f"debug_login_popup_{datetime.now().strftime('%Y%m%d_%H%M%S')}.png"
|
debug_path = Path(self.config.OUTPUT_DIR) / f"debug_login_popup_{datetime.now().strftime('%Y%m%d_%H%M%S')}.png"
|
||||||
self.login_page.screenshot(path=str(debug_path))
|
self.login_page.screenshot(path=str(debug_path))
|
||||||
|
|||||||
Reference in New Issue
Block a user