From eddc78b210290639c189b24d32447617131b2650 Mon Sep 17 00:00:00 2001 From: Floke Date: Mon, 14 Jul 2025 07:56:33 +0000 Subject: [PATCH] dealfront_enrichment.py aktualisiert --- dealfront_enrichment.py | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/dealfront_enrichment.py b/dealfront_enrichment.py index feca062c..0fec8fa4 100644 --- a/dealfront_enrichment.py +++ b/dealfront_enrichment.py @@ -2,6 +2,8 @@ import os import json import time import logging +import tempfile +import shutil import pandas as pd from selenium import webdriver from selenium.webdriver.common.by import By @@ -39,10 +41,14 @@ class DealfrontScraper: chrome_options.add_argument("--no-sandbox") chrome_options.add_argument("--disable-dev-shm-usage") chrome_options.add_argument("--window-size=1920,1200") + # TEMP DIR für User Data (verhindert Konflikte) + self._tmpdir = tempfile.mkdtemp() + chrome_options.add_argument(f"--user-data-dir={self._tmpdir}") try: self.driver = webdriver.Chrome(options=chrome_options) except Exception as e: logger.critical("WebDriver konnte nicht initialisiert werden.", exc_info=True) + shutil.rmtree(self._tmpdir, ignore_errors=True) raise self.wait = WebDriverWait(self.driver, 30) self.username, self.password = self._load_credentials() @@ -241,8 +247,10 @@ class DealfrontScraper: return all_companies def close(self): - if self.driver: + if hasattr(self, "driver") and self.driver: self.driver.quit() + if hasattr(self, "_tmpdir"): + shutil.rmtree(self._tmpdir, ignore_errors=True) if __name__ == "__main__": scraper = None