我想知道启动驱动程序后如何更新/更改硒中的下载位置?
创建配置文件和启动Webdriver期间设置下载目录不是问题。启动webdriver根据数据类型更改目录后出现问题。
例如,-如果dl doc是Word保存在Docs \ Word中-如果dl doc是pdf保存在Docs \ pdf中
这是我的代码
profile = webdriver.FirefoxProfile()
profile.set_preference('browser.download.dir', os.getcwd())
profile.set_preference("browser.download.folderList", 2)
profile.set_preference('browser.helperApps.neverAsk.saveToDisk', 'application/download,application/octet-stream,application/pdf')
profile.update_preferences()
driver = webdriver.Firefox(firefox_profile=profile)
driver.delete_all_cookies()
sleep(10)
# this part doesn't work
driver.profile.set_preference('browser.download.dir',"{0}\{1}".format(os.getcwd(),"Docs"))
driver.profile.update_preferences()
Run Code Online (Sandbox Code Playgroud)
借助Firefox,一旦上下文设置为,就可以在运行时通过scrip注入更改首选项chrome
:
def set_download_dir(driver, directory):
driver.command_executor._commands["SET_CONTEXT"] = ("POST", "/session/$sessionId/moz/context")
driver.execute("SET_CONTEXT", {"context": "chrome"})
driver.execute_script("""
Services.prefs.setBoolPref('browser.download.useDownloadDir', true);
Services.prefs.setStringPref('browser.download.dir', arguments[0]);
""", directory)
driver.execute("SET_CONTEXT", {"context": "content"})
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
1051 次 |
最近记录: |