Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/selenium/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何使用python自动化处理弹出窗口_Python_Selenium_Selenium Webdriver_Automation - Fatal编程技术网

如何使用python自动化处理弹出窗口

如何使用python自动化处理弹出窗口,python,selenium,selenium-webdriver,automation,Python,Selenium,Selenium Webdriver,Automation,我将SeleniumWebDriver与Python一起用于自动化测试。在登录我的应用程序时,我收到了单击“确定”按钮的弹出消息。我用过的地方 from selenium import webdriver def cbs_login(): browser = webdriver.Firefox() browser.get('172.20.31.1:7085/web/ccp/login') user = browser.find_element_by_css_sel

我将SeleniumWebDriver与Python一起用于自动化测试。在登录我的应用程序时,我收到了单击“确定”按钮的弹出消息。我用过的地方

from selenium import webdriver 
def cbs_login(): 
    browser = webdriver.Firefox() 
    browser.get('172.20.31.1:7085/web/ccp/login') 
    user = browser.find_element_by_css_selector('#userid') 
    user.send_keys('admin') 
    password = browser.find_element_by_css_selector('#password')
    password.send_keys('admin2') 
    login_location = browser.find_element_by_css_selector('#loginlocation') 
    login_location.click() 
    location_name = browser.find_element_by_xpath('/html/body/div[2]/div/div/div‌​/div/div/form/div/di‌​v/div/div/table/tbod‌​y/tr[4]/td/select/op‌​tion[3]')     
    location_name.click() 
    driver.switchTo().alert().accept(); 
    cbs_login()
我无法使用代码,我遇到了类似未解析引用的错误。请注意,python 2.7版本是否有其他方法来处理它。

switchTo不是python方法。你应该试试

browser.switch_to.alert.accept()

同时确保您有

请按照@andersson的说明更换驱动程序

driver.switch_to.alert.accept()
作为浏览器并尝试

browser.switch_to.alert.accept()

从互联网上搜索并使用此驱动程序命令的driveri变量的名称是什么。我不确定。你能发布selenium导入webdriver def cbs_登录的完整脚本吗:browser=webdriver.Firefox browser.get'user=browser.find_element_by_css_selector'userid'user.send_keys'admin'password=browser.find_element_by_css_selector'password'password.send__keys'admin2'登录位置=browser.find_element_by_css_selector'loginlocation'login_location.click location_name=browser.find_element_by_xpath'/html/body/div[2]/div/div/div/div/form/div/div/table/tbody/tr[4]/td/select/option[3]'location\u name.click driver.switch-to.alert.accept;cbs_loginThanks:现在我可以处理弹出窗口了。但现在我面临另一个问题。登录时,我必须选择将在下拉列表中显示的位置。我提供了要在脚本中选择的溺水对象,它正在选择位置,但没有显示在位置框中。请通过检查我的给定代码来帮助我before@Sarwan,尝试实现@Andresson中的代码,我尝试了该场景,在这个场景中,我可以选择位置本身:从selenium从selenium.webdriver.support.ui导入选择def cbs\u登录名:browser=webdriver.Firefox browser.get'url'user=browser.find\u element\u by_css\u选择器'userid'user.send\u key'admin'password=browser.find\u element\u by_css\u选择器'password'password.send\u keys'admin2'Select=浏览器。通过css选择器“登录位置”选择查找元素。单击选择。通过可见文本“仓库”浏览器选择元素。切换到。警报。接受;哥伦比亚广播公司_login@Sarwan. 你没有正确地执行它。请尝试选择=选择浏览器。通过“登录位置”选择查找元素。通过“可见”文本“仓库”选择元素