koodon
koodon
采纳率85.7%
2021-02-17 08:50 阅读 99

selenium点击网页确认时。出现该窗口已关闭。无法点击弹出窗口确认

10

 

这个窗口点击之后,窗口会自动关闭。会出现弹出框。

无法使用selenium确认点击确认。

会跳转到主窗口,但是会出现错误。

错误提示。没有这样的窗口:目标窗口已经关闭、

如何点击这个确定弹出窗口。

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 复制链接分享

5条回答 默认 最新

  • 已采纳
    jslang 天际的海浪 2021-02-17 15:28

    用execute_script()注入js,重新定义window.alert()函数,就不会弹出对话框了

    driver=webdriver.Chrome()
    driver.get("http://xxxxxxxxxxx")
    driver.execute_script('''
    window.alert = function (str) {
    	console.log(str);
    };
    ''')
    点赞 评论 复制链接分享
  • koodon koodon 2021-02-17 09:54

    我想使用本地游览器数据使用selenium,但是出现错误提示.invalid argument: user data directory is already in use, please specify a unique value for --user-data-dir argument, or don't use --user-data-dir

    无法使用。如何解决啊。

    点赞 评论 复制链接分享
  • bill20100829 歇歇 2021-02-17 11:14
  • bill20100829 歇歇 2021-02-17 11:17
    • 如果您使用默认Chrome配置文件来访问同一测试机上其他工作的网页,则不应设置 user- data-dir 作为用户数据,因为它仍被您手动启动的其他Chrome进程锁定。

      在上述情况下,您需要创建并使用另一个 Chrome配置文件,并且可以在如何通过Python打开Chrome配置文件

      如果要在独立的测试系统中执行测试,则可以设置 user-data-dir 作为。.\User Data\Default 访问默认Chrome配置文件。

      在上述情况下,您需要创建并使用另一个 Chrome配置文件,并且可以在如何在Selenium Webdriver Python 3中使用Chrome配置文件

      但是,按照最佳做法,您必须始终创建一个新的 Chrome配置文件,以执行默认Chrome配置文件可能包含扩展名,书签,浏览历史记录等,并且可能无法正确加载。

    点赞 评论 复制链接分享
  • ProfSnail ProfSnail 2021-02-17 09:37
    from selenium import webdriver
    
    options = webdriver.ChromeOptions()
    prefs = {
        'profile.default_content_setting_values' :
        {
            'notifications' : 2
        }
    }
    options.add_experimental_option('prefs',prefs)
    driver = webdriver.Chrome(chrome_options = options)

    无法关闭的弹出窗口,是消息通知,在浏览器配置时候禁用消息通知即可。

    点赞 评论 复制链接分享

相关推荐