selenium中显示等待By.ID后参数如何确定?

请教:

下式中By.ID后参数如何确定?

WebDriverWait(driver, 15, 0.5).until(EC.presence_of_element_located((By.ID,XXX)

你可以先简单学习一下HTML 前端技术,了解标签以及标签的命名以后对你的自动化定位会起到很大的帮助,id就是标签命名的id名且在页面唯一

在selenium中,元素定位的代码由两个部分组成:

  1. 定位策略
  2. 定位表达式

题目中的By.ID是定位策略,表示使用“ID选择器”进行定位
后面的XXX 则是定位的表达式,对于ID选择器来说,表达式应当时目标元素的“id属性”
比如要定位的元素如下

<input id="username" name="username" value="admin">

id属性是username,那么XXX就应该是"username"

需要注意的是:

  1. id属性是唯一,每个元素的最多只有一个id属性,且不可和其他属性相同,所以是定位效率比较高
  2. id不是必填属性,元素可以不设置id属性,那么"By.ID"这样的定位策略就不好用了,这时可以用其他定位策略完成定位

如有帮助还请及时采纳,追问可关注公众号:测试开发研习社