Selenium Python Chromedriver更改文件下载路径

时间:2016-09-04 15:46:26

标签: python google-chrome selenium download selenium-chromedriver

我正在寻找一种方法,使用chromedriver将不同的文件保存到python中的不同位置。下面的代码设置chrome以下载到folder_path而不首先弹出下载位置对话框。 单击并将一个文件下载到folder_path后(我跳过粘贴这部分代码导致我没有问题),我想将另一个文件下载到new_folder_path中。但下面的代码给出了AttributeError:'WebDriver'对象没有属性'Chrome'。如果我可以在同一个webdriver下更改Chrome的下载位置,有什么想法吗?

folder_path = "C:\\Document"

def give_chrome_option(folder_path):
    chromeOptions = webdriver.ChromeOptions() #setup chrome option
    prefs = {"download.default_directory" : folder_path,
           "download.prompt_for_download": False,
           "download.directory_upgrade": True}  #set path
    chromeOptions.add_experimental_option("prefs", prefs) #set option
    return chromeOptions
driver = webdriver.Chrome(chrome_options = give_chrome_option(folder_path)
driver.get(sample_url)
driver.Chrome(chrome_options = give_chrome_option(new_folder_path))

1 个答案:

答案 0 :(得分:0)

不,如果要下载到其他目录,则必须重新实例化WebDriver。根据您需要做什么,第一个答案here中描述的解决方法可能适合您(下载到临时目录,然后使用os.rename()移动文件)