You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Selenium访问Salesforce遇SSO重定向:无法操作第二页元素

企业SSO登录流程中Selenium无法操作页面2元素的问题

我用Python+Selenium编写脚本访问Salesforce网站,需要完成企业SSO登录流程:

  • 页面先重定向到要求输入企业邮箱的登录页(页面1),提交邮箱后跳转至需输入登录凭证的页面(页面2),之后才能进入目标仪表盘
  • 脚本可正常操作页面1的元素,但无法对页面2的元素执行任何操作
  • 已尝试隐式等待和显式等待,推测问题并非页面加载等待不足,而是同窗口重定向后的上下文问题

以下是我的代码:

url = "someurl.com"
class MyTest(object): 
    def __init__(self): 
        self.driver = webdriver.Chrome(service=Service(ChromeDriverManager().install()))
        
    def login_process(self): 
        self.driver.get(url) 
        element = self.driver.find_element(By.ID, 'idp-discovery-username') 
        element.clear() 
        element.send_keys("israo@cisco.com") 
        self.driver.find_element(By.ID, 'idp-discovery-submit').submit() 
        self.driver.implicitly_wait(10)
        # 尝试过等待iframe并切换,但无效
        # login_button = WebDriverWait(self.driver, 20).until(
        #         EC.frame_to_be_available_and_switch_to_it((By.CSS_SELECTOR, "iframe[id$='IFrame_htmIFrame']"))
        #         )

    def query(self): 
        self.driver.find_element(By.XPATH, '/html/body/div/div[2]/div[2]/article/form/input[6]')

test = MyTest()
test.login_process()
test.query()

注:页面2中我尝试定位的元素位于绿色框区域,使用上述XPATH无法找到,恳请帮忙解决。

内容的提问来源于stack exchange,提问作者raoyourboat

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.14 07:40:38