用硒弹出窗口

时间:2017-08-09 15:48:59

标签: python selenium web-scraping window

我目前有一个脚本,它将登录我公司的wiki,访问页面,并选择页面上提供的下载到pdf选项。但是,选择此选项时,此对话框

dialogue

弹出让我告诉Firefox如何处理它。我只需要selenium进行交互并点击“确定”按钮。

我不确定如何检查这个窗口的元素,我需要指导。任何文档都有帮助。

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()

2 个答案:

答案 0 :(得分:1)

您可以设置首选项以防止下载弹出广告将其下载到预定义文件夹。

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)

答案 1 :(得分:0)

我可以通过网络浏览器设置首选项,然后调用我的个人资料:

browser = Browser('firefox', profile=r'C:\Users\craab\AppData\Roaming\Mozilla\Firefox\Profiles\0lot9hun.default')