使用 python selenium 下载文件,使用 firefox 驱动程序正确下载目录

Download file with python selenium, correct download directory with firefox driver

我有以下代码,除 1 个问题外,其他代码均正常工作 下载的文件没有进入指定目录 有什么问题?

from selenium import webdriver
from selenium.webdriver.common.keys import Keys
from bs4 import BeautifulSoup
import re
import pandas as pd
import os
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.common.by import By
from selenium.webdriver.support import expected_conditions as EC
import time



url = "THE URL"
username = 'USERNAME'
password = 'PASSWORD'
profile = webdriver.FirefoxProfile()
profile.set_preference("browser.download.folderList", 2)
profile.set_preference("browser.download.manager.showWhenStarting", False)
profile.set_preference("browser.download.dir", 'C://Users/USER/OneDrive/Documents/dest_folder')
profile.set_preference("browser.helperApps.neverAsk.saveToDisk", "text/csv")

while True:

    driver = webdriver.Firefox(executable_path=r'C:/Users/USER/OneDrive/Documents/pycharm/geckodriver.exe',firefox_profile=profile)
    driver.implicitly_wait(100)
    driver.get(url)

    user_field = driver.find_element_by_id("ap_email")
    pass_field = driver.find_element_by_id("ap_password")
    sign_in = driver.find_element_by_id("signInSubmit")
    user_field.send_keys(username)
    pass_field.send_keys(password)
    sign_in.click()
    driver.get(url)
    driver.implicitly_wait(100)
    time.sleep(5)
    WebDriverWait(driver, 20).until(EC.element_to_be_clickable((By.CSS_SELECTOR, "button.yms-button-primary-alt.ng-isolate-scope[csv-header='getCsvHeader'][ng-csv^='fetchData']"))).click()
    time.sleep(5)
    driver.close()

尝试将您的目录更改为此

r'C:\Users\USER\OneDrive\Documents\dest_folder'