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:\Users\EDZ\Desktop\selenium_demo\venv\Scripts\python.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()

执行后没有报错。

可以操作正常。

 

posted @ 2020-08-04 17:54  Cindy的喵喵  阅读(1354)  评论(0编辑  收藏  举报