• Selenium+python,alert报TypeError: 'Alert' object is not callable的解决方法


    selenium通过设置警告弹框处理的部分代码如下:

    driver.find_element_by_css_selector('#s-usersetting-top').click()  #通过css找到设置按钮
    sleep(2)
    driver.find_element_by_class_name('setpref').click() #通过class定位到搜索升设置
    sleep(2)
    driver.find_element_by_link_text("保存设置").click()
    
    alert=driver.switch_to.alert()
    alert.accept()
    sleep(2)
    
    driver.quit()

    执行后报错如下:

    C:UsersEDZDesktopselenium_demovenvScriptspython.exe C:/Users/EDZ/Desktop/selenium_demo/webdriver/Alret.py
    Traceback (most recent call last):
      File "C:/Users/EDZ/Desktop/selenium_demo/webdriver/Alret.py", line 30, in <module>
        alert=driver.switch_to.alert()
    TypeError: 'Alert' object is not callable
    
    Process finished with exit code 1

    原因分析

        'Alert' object is not callable 的含义为Alert不能被函数调用,它不是一个函数。

    解决方案

    将alert后的括号去掉。

    正确代码如下:

    driver.find_element_by_css_selector('#s-usersetting-top').click()  #通过css找到设置按钮
    sleep(2)
    driver.find_element_by_class_name('setpref').click() #通过class定位到搜索升设置
    sleep(2)
    driver.find_element_by_link_text("保存设置").click()
    
    alert=driver.switch_to.alert
    alert.accept()
    sleep(2)
    
    driver.quit()

    执行后没有报错。

    可以操作正常。

  • 相关阅读:
    模板方法模式
    LINQ多条件OR模糊查询
    在LINQ中实现多条件联合主键LEFT JOIN
    js只显示整点
    Vue-cli2中处理跨域
    vue动态绑定类(实现tab)
    Vue中引入cdn同时防止cdn挂掉
    vue+nginx开启gzip压缩
    Vue路由守卫
    vue-router嵌套路由和二级目录(域名)
  • 原文地址:https://www.cnblogs.com/gengwulovestudy/p/13434843.html
Copyright © 2020-2023  润新知