xpath定位不包含某种属性的元素

今天定位一个页面中的input文本框,发现竟然有两个几乎一模一样的html代码的input文本框。

唯一不同的是,一图中的input有一个comps="[object Object],[object Object]"的属性和属性值,二图则没有。我要定位的是二图中的input,并且输入内容。

代码如下:

复制代码
from selenium import webdriver
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
from selenium.webdriver.common.by import By
import time
import random


phone_input = WebDriverWait(driver, 5).until(EC.presence_of_element_located((By.XPATH, '//*[@id="mobilePhone" and not(@comps)]')))
time.sleep(random.randint(1, 3))        # 随机等待一到三秒
phone_input.send_keys("6466589337")
time.sleep(2)

not(@comps)即代表定位不包含叫做comps属性的元素。

还可以用and或者or来指定多个属性值。

复制代码
//tr[not(@id) and not(@class)]
或者
//tr[not(@id) or not(@class)]
相关推荐
酷柚易汛9 小时前
酷柚易汛ERP 2025-12-26系统升级日志
java·前端·数据库·php
Onlyᝰ9 小时前
前端调用接口进行上传文件
前端
90后的晨仔9 小时前
2025,我的“AI搭子”:那个我以为用不上的AI,成了我每天都离不开的搭档!!
前端
hashiqimiya9 小时前
JavaScript的object的使用和监控打印日志
前端·javascript·vue.js
颜酱9 小时前
从0到1实现通用微任务调度器:理解前端异步调度核心
前端
梦65010 小时前
Vue 组件 vs React 组件深度对比
javascript·vue.js·react.js
2501_9462309810 小时前
Cordova&OpenHarmony提醒管理系统实现
android·javascript
C_心欲无痕10 小时前
vue3 - useId生成唯一标识符
前端·javascript·vue.js·vue3
KoalaShane10 小时前
El-slider 增加鼠标滚动滑块事件
开发语言·前端·javascript
栀秋66610 小时前
Tailwind CSS:用“类名编程”重构你的前端开发体验
前端·css