fix(scraper): correct CSV export selector and add persistent data volume [32788f42]
This commit is contained in:
@@ -60,7 +60,7 @@ SELECTORS = {
|
|||||||
"job_row_date": ".//td[count(//th[contains(., 'Datum')]/preceding-sibling::th) + 1]",
|
"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]",
|
"job_row_shooting_type": ".//td[count(//th[contains(., 'Typ')]/preceding-sibling::th) + 1]",
|
||||||
"export_dropdown": "[data-qa-id='dropdown:export']",
|
"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 ---
|
# --- 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 = wait.until(EC.element_to_be_clickable((By.CSS_SELECTOR, SELECTORS["export_dropdown"])))
|
||||||
export_btn.click()
|
export_btn.click()
|
||||||
logger.debug("Export dropdown clicked, waiting for menu items...")
|
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"])))
|
try:
|
||||||
|
csv_btn = wait.until(EC.element_to_be_clickable((By.CSS_SELECTOR, SELECTORS["export_csv_link"])))
|
||||||
csv_btn.click()
|
csv_btn.click()
|
||||||
logger.info("CSV Export link clicked.")
|
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
|
# Wait for file to appear
|
||||||
logger.debug("Waiting for CSV file in download directory...")
|
logger.debug("Waiting for CSV file in download directory...")
|
||||||
|
|||||||
@@ -12,6 +12,7 @@ services:
|
|||||||
- "8002:8000" # Map internal 8000 to external 8002 to avoid conflicts
|
- "8002:8000" # Map internal 8000 to external 8002 to avoid conflicts
|
||||||
volumes:
|
volumes:
|
||||||
- ./backend:/app # Mount the backend code for easier development
|
- ./backend:/app # Mount the backend code for easier development
|
||||||
|
- ./backend/data:/app/data # Persistent data storage
|
||||||
restart: unless-stopped
|
restart: unless-stopped
|
||||||
|
|
||||||
fotograf-de-scraper-frontend:
|
fotograf-de-scraper-frontend:
|
||||||
|
|||||||
Reference in New Issue
Block a user