bugfix
This commit is contained in:
@@ -85,7 +85,7 @@ class DealfrontScraper:
|
|||||||
logger.error(f"Konnte Debug-Artefakte nicht speichern: {e}")
|
logger.error(f"Konnte Debug-Artefakte nicht speichern: {e}")
|
||||||
|
|
||||||
def login(self):
|
def login(self):
|
||||||
"""Führt NUR den Login-Prozess durch."""
|
"""Führt NUR den Login-Prozess durch, ohne auf das Dashboard zu warten."""
|
||||||
if not self.driver: return False
|
if not self.driver: return False
|
||||||
username, password = self._load_credentials()
|
username, password = self._load_credentials()
|
||||||
if not username or not password: return False
|
if not username or not password: return False
|
||||||
@@ -94,19 +94,13 @@ class DealfrontScraper:
|
|||||||
logger.info(f"Navigiere zur Login-Seite: {DEALFRONT_LOGIN_URL}")
|
logger.info(f"Navigiere zur Login-Seite: {DEALFRONT_LOGIN_URL}")
|
||||||
self.driver.get(DEALFRONT_LOGIN_URL)
|
self.driver.get(DEALFRONT_LOGIN_URL)
|
||||||
|
|
||||||
email_field = self.wait.until(EC.visibility_of_element_located((By.NAME, "email")))
|
self.wait.until(EC.visibility_of_element_located((By.NAME, "email"))).send_keys(username)
|
||||||
email_field.send_keys(username)
|
self.driver.find_element(By.CSS_SELECTOR, "input[type='password']").send_keys(password)
|
||||||
|
self.driver.find_element(By.XPATH, "//button[normalize-space()='Log in']").click()
|
||||||
|
|
||||||
password_field = self.driver.find_element(By.CSS_SELECTOR, "input[type='password']")
|
logger.info("Login-Befehl gesendet. Kurze Pause vor der Navigation.")
|
||||||
password_field.send_keys(password)
|
time.sleep(5) # Feste, großzügige Pause, um die Session-Cookies setzen zu lassen.
|
||||||
|
|
||||||
login_button = self.driver.find_element(By.XPATH, "//button[normalize-space()='Log in']")
|
|
||||||
login_button.click()
|
|
||||||
|
|
||||||
# Verifizieren, dass der Login erfolgreich war, indem wir auf das Dashboard-Element warten
|
|
||||||
verification_dashboard_selector = (By.XPATH, "//input[@data-cy='header-search-input']")
|
|
||||||
self.wait.until(EC.visibility_of_element_located(verification_dashboard_selector))
|
|
||||||
logger.info("Login erfolgreich! Dashboard erreicht.")
|
|
||||||
return True
|
return True
|
||||||
|
|
||||||
except Exception as e:
|
except Exception as e:
|
||||||
|
|||||||
Reference in New Issue
Block a user