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

Selenium代码执行前几步后无响应,登录后无法操作页面元素问题求助

问题原因
  • 固定休眠逻辑可靠性不足:登录后页面跳转、资源加载的时间受网络环境影响波动较大,固定2秒休眠结束后页面往往未完成完整渲染,此时执行刷新、元素查找操作会直接进入阻塞状态,引发程序无响应。
  • 驱动启动参数配置缺失:控制台输出的SSL握手失败报错是未配置忽略证书校验参数导致,GPU相关报错是Chrome默认开启的硬件加速在驱动适配较差的环境下会卡住页面加载流程,两类报错都会中断页面正常加载。
  • 页面操作逻辑错误:登录成功后站点会自动跳转到服务管理后台页,多次调用refresh刷新登录前的初始页面,会触发站点的会话校验机制,导致页面被重定向到登录页或拦截页,无法定位到目标元素。
  • 元素定位API兼容性问题:代码中使用的find_element_by_*是Selenium 3的旧版API,在Selenium 4及以上版本中已被正式弃用,部分驱动版本下执行该类方法会出现兼容性阻塞。
解决方法

按照如下步骤调整代码即可修复问题:

  1. 给undetected_chromedriver添加启动参数,解决SSL和GPU报错
  2. 替换固定休眠逻辑为显示等待,指定最长等待时间,只有元素加载完成后才执行后续操作
  3. 移除登录后多余的refresh操作,等待页面自动跳转完成后再定位元素
  4. 替换为Selenium 4标准的元素定位API,避免兼容性问题

修改后的可运行代码如下:

import undetected_chromedriver as uc
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
import time

# 添加启动参数解决报错
options = uc.ChromeOptions()
options.add_argument('--ignore-certificate-errors')
options.add_argument('--ignore-ssl-errors')
options.add_argument('--disable-gpu')
options.add_argument('--no-sandbox')
browser = uc.Chrome(options=options)

browser.get('https://aternos.org/server/devialcraft')
browser.refresh()
time.sleep(1)

# 登录流程
username = browser.find_element(By.ID, "user")
username.clear()
username.send_keys("Not_Breadbutter")

time.sleep(2)
password = browser.find_element(By.ID, "password")
password.clear()
password.send_keys("my_password")

time.sleep(2)
browser.find_element(By.ID, "login").click()

# 初始化显示等待,最长等待15秒
wait = WebDriverWait(browser, 15)
# 等待服务名称元素加载完成再点击
server_name = wait.until(EC.element_to_be_clickable((By.CSS_SELECTOR, "div.server-name")))
server_name.click()

# 等待启动按钮加载完成再点击
start_btn = wait.until(EC.element_to_be_clickable((By.CSS_SELECTOR, "div.btn.btn-huge.btn-success")))
start_btn.click()

time.sleep(9)
browser.quit()

如果调整后仍然出现无响应问题,可以在登录完成后打印当前页面URL和页面源码,确认是否成功跳转到目标页面,是否被站点反爬策略拦截。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.29 01:36:07