如何阻止Python Selenium Firefox自动登录公司网站?
解决Firefox Selenium自动登录公司网站的问题
方法1:使用全新临时配置文件
Selenium默认可能复用了本地默认浏览器的配置,导致SSO会话被保留。创建完全干净的临时配置文件,可避免加载任何已有凭证:
from selenium.webdriver.firefox.options import Options from selenium import webdriver options = Options() # 禁用自动保存登录信息 options.set_preference("signon.rememberSignons", False) options.set_preference("signon.autologin.proxy", False) # 清空集成认证信任列表 options.set_preference("network.automatic-ntlm-auth.trusted-uris", "") options.set_preference("network.negotiate-auth.trusted-uris", "") # 初始化全新浏览器实例 driver = webdriver.Firefox(options=options) driver.get("你的公司网站URL")
方法2:禁用Kerberos/NTLM集成认证
如果公司SSO采用Windows集成认证(Kerberos/NTLM),直接在配置中禁用自动认证:
from selenium.webdriver.firefox.options import Options from selenium import webdriver options = Options() # 关闭NTLM自动认证 options.set_preference("network.automatic-ntlm-auth.enabled", False) # 关闭Kerberos自动认证 options.set_preference("network.negotiate-auth.enabled", False) driver = webdriver.Firefox(options=options) driver.get("你的公司网站URL")
方法3:启用隐私浏览模式
隐私模式下不会加载已保存的会话和凭证,可直接规避SSO自动登录:
from selenium.webdriver.firefox.options import Options from selenium import webdriver options = Options() options.add_argument("-private") driver = webdriver.Firefox(options=options) driver.get("你的公司网站URL")
额外处理
如果网站通过Cookie维持登录状态,启动浏览器后可主动清除所有Cookie:
driver.delete_all_cookies() driver.refresh()
内容的提问来源于stack exchange,提问作者user5206515
相关产品推荐
相关产品推荐

