Selenium等待判断元素页面加载完成

你可以使用Selenium的WebDriverWait和expected_conditions来等待直到元素变得可点击。

try:

element = WebDriverWait(driver, 10).until(

EC.element_to_be_clickable((By.ID, "你的元素ID"))

)

print("元素可点击")

except TimeoutException:

print("在10秒内未找到可点击的元素")

检查元素是否可点击

虽然Selenium没有直接提供一个名为is_clickable()的方法来判断一个元素是否可点击,但我们可以通过组合is_displayed()和is_enabled()方法来实现这一功能。如果一个元素是可见且启用的,通常它也是可点击的。

element = driver.find_element_by_id("你的元素ID")

if element.is_displayed() and element.is_enabled():

print("元素可点击")

else:

print("元素不可点击")

disabled

23:02 2025/12/10

python selenium 等待地址栏改变

url_to_be(url)是一个关键方法,它检查当前页面的URL是否等于预期值

WebDriverWait(driver, timeout).until(EC.url_to_be("https://www.example.com"))

url_contains(url)?:等待URL包含指定字符串

WebDriverWait(driver, 10).until(EC.url_contains("baidu"))

url_matches(pattern)?:等待URL匹配正则表达式模式

WebDriverWait(driver, 10).until(EC.url_matches(r"https://.*\.baidu\.com/.*"))

lambda匿名函数 :等待URL与之前不同(需记录初始URL)

initial_url = driver.current_url

WebDriverWait(driver, 10).until(lambda driver: driver.current_url != initial_url)

使用WebDriverWait等待直到URL改变

wait = WebDriverWait(driver, 10) # 等待最多10秒

wait.until(EC.url_changes(driver.current_url)) # 期望URL与当前URL不同

相关推荐
A.A呐1 小时前
【C++第二十九章】IO流
开发语言·c++
椰猫子1 小时前
Java:异常(exception)
java·开发语言
lifewange1 小时前
pytest-类中测试方法、多文件批量执行
开发语言·python·pytest
cmpxr_1 小时前
【C】原码和补码以及环形坐标取模算法
c语言·开发语言·算法
2401_827499992 小时前
python项目实战09-AI智能伴侣(ai_partner_5-6)
开发语言·python
PD我是你的真爱粉2 小时前
MCP 协议详解:从架构、工作流到 Python 技术栈落地
开发语言·python·架构
win x2 小时前
Redis 使用~如何在Java中连接使用redis
java·数据库·redis
星晨雪海2 小时前
基于 @Resource 的支付 Service 多实现类完整示例
java·开发语言
阿维的博客日记2 小时前
什么是逃逸分析
java·juc
ACP广源盛139246256732 小时前
破局 Type‑C 切换器痛点@ACP#GSV6155+LH3828/GSV2221+LH3828 黄金方案
c语言·开发语言·网络·人工智能·嵌入式硬件·计算机外设·电脑