diff --git a/dealfront_enrichment.py b/dealfront_enrichment.py index 4067745b..36e2c915 100644 --- a/dealfront_enrichment.py +++ b/dealfront_enrichment.py @@ -123,16 +123,14 @@ class DealfrontScraper: try: logger.info("Extrahiere Ergebnisse von der aktuellen Seite...") results = [] - rows_selector = (By.CSS_SELECTOR, "table#t-result-table tbody tr[id]") - self.wait.until(EC.presence_of_element_located(rows_selector)) - time.sleep(3) - rows_selector = (By.CSS_SELECTOR, "table#t-result-table tbody tr[id]") - WebDriverWait(self.driver, 15).until( - EC.number_of_elements_to_be_more_than(rows_selector, 0) - ) + rows_selector = (By.CSS_SELECTOR, "table#t-result-table tbody tr[id]") + # Warte, bis mindestens eine Daten-Zeile im DOM ist (bis zu 15 Sekunden) + self.wait.until(EC.presence_of_all_elements_located(rows_selector)) + # Optionaler Minimal-Puffer für Rest-Rendering + time.sleep(1) - rows = self.driver.find_elements(*rows_selector) - logger.info(f"{len(rows)} Firmen-Datenzeilen zur Verarbeitung gefunden.") + rows = self.driver.find_elements(*rows_selector) + logger.info(f"{len(rows)} Firmen-Datenzeilen zur Verarbeitung gefunden.") for i, row in enumerate(rows, 1): try: