【问题标题】:Pop Up Window with Selenium带有硒的弹出窗口
【发布时间】:2017-08-09 15:48:58
【问题描述】:

我目前有一个脚本,可以登录到我公司的 wiki,访问一个页面,然后选择页面上可用的下载为 pdf 选项。但是,选择此选项时,此对话框

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

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

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

【问题讨论】:

标签: python selenium web-scraping window


【解决方案1】:

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

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

【讨论】:

    【解决方案2】:

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

    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)
    

    【讨论】:

    • 非常有帮助!现在有什么方法我应该调用它来开始下载,或者它会按原样使用我的代码吗?
    • @ChaseRaab 您只需点击下载链接,文件将保存在提到的下载路径中。
    • 脚本的重点是我不必点击任何东西。
    猜你喜欢
    • 2018-06-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-04-20
    • 2013-06-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多