find_element_by_xpath动态ID无效

ron_xin ron_xin 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区
   
element = driver.find_element_by_xpath(".//label[text()='散客']")
ticket_id = element.get_attribute("for")
print(ticket_id)
check = driver.find_element_by_xpath("./*//input[@id='{}']".format(ticket_id))
print(check.get_attribute("ID"))
check.click()
-------------------------------------------------
ctl00_ContentPlaceHolder1_chklstDiscounttypee_0
ctl00_ContentPlaceHolder1_chklstDiscounttypee_0

check.click()是失败的,

driver.find_element_by_xpath("./*//input[@id='ctl00_ContentPlaceHolder1_chklstDiscounttypee_0]").click()

是成功的,很奇怪。
...全文

相关推荐

python 解决selenium 中的 .clear()方法失效问题

主要介绍了python 解决selenium 中的 .clear()方法失效问题,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧

weixin_38704786

Selenium元素定位的30种方式(史上最全)

主要介绍了Selenium元素定位的30种方式,中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧

weixin_38627603

python selenium xpath定位操作

xpath是一种在xm文档中定位的语言,详细简介,请自行参照百度百科,本文主要总结一下xpath的使用方法,个人看法,如有不足和错误,敬请指出。 注意:xpath的定位 同一级别的多个标签 索引从1开始 而不是0 1. 绝对定位: 此方法最为简单,具体格式为 xxx.find_element_by_xpath(“绝对路径”) 具体例子: xxx.find_element_by_xpath(“/html/body/div[x]/form/input”) x 代表第x个 div标签,注意,索引从1开始而不是0 此方法缺点显而易见,当页面元素位置发生改变时,都需要修改,因此,并不推荐使用。

weixin_38703866

IE浏览器Xpath工具.zip

主要用于自动化测试中IE浏览器下获取元素的XPath,经过测试,结果和chrome生成的一样,使用java,或python+selenium定位元素

vbsred0

Python+selenium实现Web自动化测试的各种元素定位

一、先安装selenium驱动或者插件 这是我另一篇博客,详细的介绍了各种浏览器如何安装: https://blog.csdn.net/qq_43107323/article/details/105423492 二、编写Python代码;我这里是网上最全的元素定位 from selenium import webdriver import time dr = webdriver.Chrome() # 打开登陆163邮箱的网页 dr.get('http://mail.163.com/') # 将浏览器窗口最大化 dr.maximize_window() # 1、id btn = dr.find_

weixin_38686267
评论 3
收藏 已收藏
分享
返回顶部
ron_xin
脚本语言 37,737 成员 34,208 内容