我试图用selenium和python点击下载按钮下载pdf。但是在运行Chrome和我为chrome浏览器开发的完整测试时得到上述错误。
driver.find_element_by_xpath("/html/body/app-root/app-full-layout/div/div[2]/div/div/div/app-list/section/div[2]/div/div[2]/div[2]/div/div[2]/button").click()
time.sleep(7)
options = Options()
options.set_preference("browser.download.folderList", 0)
options.set_preference("browser.download.manager.showWhenStarting", False)
options.set_preference("browser.download.dir", "/DFS")
options.set_preference("browser.helperApps.neverAsk.saveToDisk","application/octet-stream,application/pdf")
driver = driver.Chrome(chrome_options=self.options)
预期执行此代码并下载pdf文件
selenium.webdriver.chrome类不包含方法set_preference()
set_preference(name, value)
来自selenium.webdriver.fire fox.option类。
因此,在使用ChromeOptions for ChromeDriver和Chrome时,您需要使用add_argument(参数)
方法,如下所示:
options = webdriver.ChromeOptions()
options.add_argument("--safebrowsing-disable-download-protection")
options.add_argument("safebrowsing-disable-extension-blacklist")
driver = webdriver.Chrome(options=options, executable_path=r'C:\Utility\BrowserDrivers\chromedriver.exe')
您可以在如何下载XML文件避免弹出窗口中找到相关讨论这种类型的文件可能会通过ChromeDriver损害您的计算机,并Chrome在Python中使用Selenium