使用 Selenium 弹出 Window
Pop Up Window with Selenium
我目前有一个脚本可以登录到我公司的 wiki,访问一个页面,并且 select 页面上提供了一个下载到 pdf 的选项。然而,当这个选项被选中时,这个对话框
弹出窗口要求我告诉 Firefox 如何处理它。我只需要 selenium 进行交互并点击 "ok" 按钮。
我不确定如何检查此 window 中的元素,需要指导。任何文档都有帮助。
from splinter import Browser
browser = Browser()
browser.visit('https://company.wiki.com')
browser.find_by_id('login-link').click()
browser.fill('os_username', 'user')
browser.fill('os_password', 'pass')
browser.find_by_name('login').click()
browser.visit('https://pageoncompany.wiki.com')
browser.find_by_xpath('//*[@id="navigation"]/ul/li[4]').click()
browser.find_by_id('action-export-pdf-link').click()
您可以设置首选项以防止出现下载弹出广告并将其下载到预定义的文件夹。
fp = webdriver.FirefoxProfile()
fp.set_preference("browser.download.folderList", 2) # custom folder as set by repo
fp.set_preference("browser.download.manager.showWhenStarting", False)
fp.set_preference("browser.download.dir", <download_folder_path>)
fp.set_preference("browser.helperApps.neverAsk.saveToDisk", content_type)
# Enable auto download, Avoid popup during downloads
fp.set_preference("browser.download.panel.shown", False)
fp.set_preference("browser.helperApps.neverAsk.openFile", content_type)
driver = webdriver.Firefox(fp)
我能够通过网络浏览器设置首选项,然后调用我的个人资料:
browser = Browser('firefox', profile=r'C:\Users\craab\AppData\Roaming\Mozilla\Firefox\Profiles[=10=]lot9hun.default')
我目前有一个脚本可以登录到我公司的 wiki,访问一个页面,并且 select 页面上提供了一个下载到 pdf 的选项。然而,当这个选项被选中时,这个对话框
弹出窗口要求我告诉 Firefox 如何处理它。我只需要 selenium 进行交互并点击 "ok" 按钮。
我不确定如何检查此 window 中的元素,需要指导。任何文档都有帮助。
from splinter import Browser
browser = Browser()
browser.visit('https://company.wiki.com')
browser.find_by_id('login-link').click()
browser.fill('os_username', 'user')
browser.fill('os_password', 'pass')
browser.find_by_name('login').click()
browser.visit('https://pageoncompany.wiki.com')
browser.find_by_xpath('//*[@id="navigation"]/ul/li[4]').click()
browser.find_by_id('action-export-pdf-link').click()
您可以设置首选项以防止出现下载弹出广告并将其下载到预定义的文件夹。
fp = webdriver.FirefoxProfile()
fp.set_preference("browser.download.folderList", 2) # custom folder as set by repo
fp.set_preference("browser.download.manager.showWhenStarting", False)
fp.set_preference("browser.download.dir", <download_folder_path>)
fp.set_preference("browser.helperApps.neverAsk.saveToDisk", content_type)
# Enable auto download, Avoid popup during downloads
fp.set_preference("browser.download.panel.shown", False)
fp.set_preference("browser.helperApps.neverAsk.openFile", content_type)
driver = webdriver.Firefox(fp)
我能够通过网络浏览器设置首选项,然后调用我的个人资料:
browser = Browser('firefox', profile=r'C:\Users\craab\AppData\Roaming\Mozilla\Firefox\Profiles[=10=]lot9hun.default')