单击下载按钮时,浏览器当然会弹出一个对话框,询问我是否要保存或打开。当然,Selenium无法触摸,因为这是系统弹出窗口而不是浏览器。
我一直在阅读,人们建议创建具有特定首选项的Firefox配置文件,并使用该配置文件打开浏览器,但显然这已不再适用(已过时)。
这是我以前的经历:
@download_dir = "/Users/Name/Desktop/Folder_Name"
opt = Selenium::WebDriver::Firefox::Profile.new
profile['network.proxy.http'] = 'localhost'
profile['network.proxy.http_port'] = 9090
profile['browser.download.dir'] = @download_dir
profile['browser.download.folderList'] = 2
profile['browser.manager.showWhenStarting'] = false
profile['browser.helpderApps.neverAsk.saveToDisk'] = "text/csv"
@driver=Selenium::WebDriver.for :firefox, :profile => profile
@driver.manage.window.maximize
@driver.navigate.to "https://www.whatever.com/"
end
当我尝试运行代码时,我得到:
WARN Selenium [DEPRECATION] :profile is deprecated. Use Selenium::WebDriver::Firefox::Options#profile= instead.
我看着它,但窗口仍然弹出。
@download_dir = "/Users/Name/Desktop/Folder_Name"
#profiles
opt = Selenium::WebDriver::Firefox::Options.new
opt.add_preference("browser.manager.showWhenStarting", false)
opt.add_preference("browser.helperApps.neverAsk.saveToDisk", "text/csv")
@driver=Selenium::WebDriver.for :firefox,
@driver.manage.window.maximize
@driver.navigate.to "https://www.whatever.com/"
很明显,我在这里做错了。我就是不知道。
请帮助。