警报 Python Selenium,Chrome WebDriver:切换到警报不起作用
Alert Python Selenium, Chrome WebDriver: switch to alert doesn't work
关闭警报无效。我每次都收到错误消息,我正在使用 python 并使用 chrome webdriver。传递登录名和密码工作正常。
非常感谢您的帮助:) Thanks:D
from selenium import webdriver
import time
browser = webdriver.Chrome('My chromedriver path')
a = 1
while a == 1:
try:
browser.get('https://www.facebook.com/')
time.sleep(2)
l = browser.find_element_by_id('email')
l.send_keys('myphonenumber')
l = browser.find_element_by_id('pass')
l.send_keys('myspassword')
l = browser.find_element_by_id('loginbutton')
l.click()
time.sleep(7)
#code works to here and then breaks with error
b = browser.switch_to.alert()
b.dismiss()
time.sleep(2)
l = browser.find_element_by_xpath('//*[@id="js_9p"]/div/div/ul/li[1]/a')
time.sleep(2)
l.click()
except:
print('error occured, trying again')
这是我得到的错误:
raise exception_class(message, screen, stacktrace)
selenium.common.exceptions.NoAlertPresentException:
Message: no such alert
(Session info: chrome=80.0.3987.149)
尝试使用 chrome_options
,它会抑制通知。
from selenium import webdriver
from selenium.webdriver.chrome.options import Options
import time
options = webdriver.ChromeOptions()
preferences = {"profile.default_content_setting_values.notifications" : 2}
options.add_experimental_option("prefs", preferences)
browser = webdriver.Chrome(chromedriver, chrome_options=options)
browser.get('https://www.facebook.com/')
time.sleep(2)
l = browser.find_element_by_id('email')
l.send_keys('username')
l = browser.find_element_by_id('password')
l.send_keys('password')
l = browser.find_element_by_id('loginbutton')
l.click()
time.sleep(7)
关闭警报无效。我每次都收到错误消息,我正在使用 python 并使用 chrome webdriver。传递登录名和密码工作正常。
非常感谢您的帮助:) Thanks:D
from selenium import webdriver
import time
browser = webdriver.Chrome('My chromedriver path')
a = 1
while a == 1:
try:
browser.get('https://www.facebook.com/')
time.sleep(2)
l = browser.find_element_by_id('email')
l.send_keys('myphonenumber')
l = browser.find_element_by_id('pass')
l.send_keys('myspassword')
l = browser.find_element_by_id('loginbutton')
l.click()
time.sleep(7)
#code works to here and then breaks with error
b = browser.switch_to.alert()
b.dismiss()
time.sleep(2)
l = browser.find_element_by_xpath('//*[@id="js_9p"]/div/div/ul/li[1]/a')
time.sleep(2)
l.click()
except:
print('error occured, trying again')
这是我得到的错误:
raise exception_class(message, screen, stacktrace)
selenium.common.exceptions.NoAlertPresentException:
Message: no such alert
(Session info: chrome=80.0.3987.149)
尝试使用 chrome_options
,它会抑制通知。
from selenium import webdriver
from selenium.webdriver.chrome.options import Options
import time
options = webdriver.ChromeOptions()
preferences = {"profile.default_content_setting_values.notifications" : 2}
options.add_experimental_option("prefs", preferences)
browser = webdriver.Chrome(chromedriver, chrome_options=options)
browser.get('https://www.facebook.com/')
time.sleep(2)
l = browser.find_element_by_id('email')
l.send_keys('username')
l = browser.find_element_by_id('password')
l.send_keys('password')
l = browser.find_element_by_id('loginbutton')
l.click()
time.sleep(7)