我想在Chrome浏览器中运行硒测试用例。在此之前,我已将铬浏览器文件的默认下载位置设置为f:/ xyzselenium webdriver python:打开Chrome浏览器运行测试用例不会加载浏览器保存的设置
运行硒脚本时,点击链接下载文件 - 它会在Chrome的默认位置下载(c :/文件和设置/下载),而不是在我之前设置的f:/ xyz
如何更正此问题?
我想在Chrome浏览器中运行硒测试用例。在此之前,我已将铬浏览器文件的默认下载位置设置为f:/ xyzselenium webdriver python:打开Chrome浏览器运行测试用例不会加载浏览器保存的设置
运行硒脚本时,点击链接下载文件 - 它会在Chrome的默认位置下载(c :/文件和设置/下载),而不是在我之前设置的f:/ xyz
如何更正此问题?
这里的问题很可能是下载位置与特定的用户配置文件相关联,并且Chrome驱动程序遵循与Firefox驱动程序相同的模式,因此默认情况下它会使用完全干净的用户的副本配置文件每次运行时,所以您为用户设置的下载位置永远不会被Selenium选中。在Firefox中,解决方案是创建一个自定义的Firefox配置文件,然后告诉Selenium以此运行。我敢打赌,在Chrome驱动中有一个类似的功能。
根据docs:
DesiredCapabilities capabilities = DesiredCapabilities.chrome();
capabilities.setCapability("chrome.switches", Arrays.asList("--user-data-dir=/path/to/profile/directory"));
WebDriver driver = new ChromeDriver(capabilities);
是的,这是Java,但它应该是相当容易转换到Python。此外,请注意文档说,有一个关于能够设置自定义配置文件的已知错误。
编辑:
我想我找到了一个温和哈克解决方案,它应该为你工作。
注意,这些步骤假定硒实际上在SYSTEM用户下运行了至少一次Chrome。如果没有,您可以手动创建在SYSTEM用户下运行Chrome所需的目录,例如从终端中。
是的 - 没有哪里能找到python + chrome打开已配置下载位置的现有配置文件的示例。尝试以下 - 但没有好\t \t opts =选项() \t opts.add_argument(“ - user-data-dir'C:\ Users \ username \ AppData \ Local \ Google \ Chrome \ User \ Data \ Default '“) self.driver = webdriver.Chrome(chrome_options = opts) – user83969
当时无法完成。从官方ChromeDriver维基在http://code.google.com/p/selenium/wiki/ChromeDriver:
已知问题 有与ChromeDriver已知问题,下面列出了一把:
哪个操作系统是你吗? –