fix(scraper): correct CSV export selector and add persistent data volume [32788f42]

This commit is contained in:
2026-03-20 19:28:19 +00:00
parent 5720a4a7e0
commit 5dad99d8b3
2 changed files with 11 additions and 5 deletions

View File

@@ -60,7 +60,7 @@ SELECTORS = {
"job_row_date": ".//td[count(//th[contains(., 'Datum')]/preceding-sibling::th) + 1]",
"job_row_shooting_type": ".//td[count(//th[contains(., 'Typ')]/preceding-sibling::th) + 1]",
"export_dropdown": "[data-qa-id='dropdown:export']",
"export_csv_link": "//a[contains(text(), 'CSV') or contains(., 'CSV')]",
"export_csv_link": "button[data-qa-id='button:csv']",
}
# --- PDF Generation Logic ---
@@ -332,11 +332,16 @@ async def generate_pdf(job_id: str, account_type: str):
export_btn = wait.until(EC.element_to_be_clickable((By.CSS_SELECTOR, SELECTORS["export_dropdown"])))
export_btn.click()
logger.debug("Export dropdown clicked, waiting for menu items...")
time.sleep(1)
time.sleep(2)
csv_btn = wait.until(EC.element_to_be_clickable((By.XPATH, SELECTORS["export_csv_link"])))
csv_btn.click()
logger.info("CSV Export link clicked.")
try:
csv_btn = wait.until(EC.element_to_be_clickable((By.CSS_SELECTOR, SELECTORS["export_csv_link"])))
csv_btn.click()
logger.info("CSV Export button clicked.")
except TimeoutException:
logger.error("CSV Button not found after clicking dropdown.")
take_error_screenshot(driver, "csv_button_missing")
raise HTTPException(status_code=500, detail="CSV Export Button konnte nicht gefunden werden.")
# Wait for file to appear
logger.debug("Waiting for CSV file in download directory...")

View File

@@ -12,6 +12,7 @@ services:
- "8002:8000" # Map internal 8000 to external 8002 to avoid conflicts
volumes:
- ./backend:/app # Mount the backend code for easier development
- ./backend/data:/app/data # Persistent data storage
restart: unless-stopped
fotograf-de-scraper-frontend: