ruby - RUBY:Selenium webdriver,设置下载 pdf 文件而不是打开它们
问题描述
当我转到带有 pdf 的页面时,它会在查看器中打开而不是下载。
如何修复我的代码以将文件下载到指定的文件夹中?
require "selenium-webdriver"
require 'pry'
#driver = Selenium::WebDriver.for :chrome
download_prefs = {
prompt_for_download: false,
default_directory: 'folder/pdf_downloads'
}
plugin_prefs = {
always_open_pdf_externally: true
}
options = Selenium::WebDriver::Chrome::Options.new
options.add_preference(:download, download_prefs)
options.add_preference(:plugins, plugin_prefs)
driver = Selenium::WebDriver.for :chrome, options: options
# Goto Login Page (file)
url="file:///page.html"
driver.navigate.to url
element = driver.find_element(id: 'formsubmit')
element.submit
sleep 5
# Goto info page
info_url = 'https://webapp.domain.com/Secure/info'
driver.navigate.to info_url
sleep 5
# Download pdf at link
elements = driver.find_elements(css: "#ar-pdfreport a")
link = elements.first.attribute("href")
driver.navigate.to link
解决方案
推荐阅读
- powershell - Azure 广告将成员从一个组添加到另一个组
- c# - 硬件安全模块:如何使用数字签名
- apache - 应用程序和网站的虚拟主机,在端口 80 和应用程序 81 访问网站?
- reactjs - Cancelling axios requests when doing 'instant search' type input boxes
- flutter - 使 Column 的子项(例如容器布局)水平 wrap_content
- sql - 执行带有输出参数的存储过程会等到它完成执行吗?
- android-studio - 如何返回 GitHub 的一个点并且仍在 Android Studio 的 master 分支中?
- javascript - Antd 过滤无法正常工作,执行客户端代码但没有过滤发生
- loops - 一位分支预测
- redux - What is a difference between mapStateToProps,mapDispatchToProps types and selector in reactnative