Selenium VBA点击无<button>的网页元素报错,求解决方法
解决Selenium VBA点击目标元素的问题
推荐定位方式(按可靠性排序)
- 通过ID定位(最优先,唯一标识)
目标元素的<a>标签有唯一IDsourceResults-nextPage,直接定位该标签点击即可,无需找内部的<span>:
bot.FindElementById("sourceResults-nextPage").Click
- 修正后的CSS选择器
你之前的CSS语法错误,正确写法如下(两种可选):
- 直接定位
<a>标签:
bot.FindElementByCss("a.btn.btn-link#sourceResults-nextPage").Click
- 定位内部的
<span>标签:
bot.FindElementByCss("a#sourceResults-nextPage span.ico-navigate-right.blueText").Click
- 修正后的XPath定位
你之前的XPath存在语法错误(多余单引号、属性归属错误、未闭合括号),正确写法可选:
- 通过ID定位
<a>标签:
bot.FindElementByXPath("//a[@id='sourceResults-nextPage']").Click
- 通过
title属性区分(和相邻的"Next 5 pages"元素区分):
bot.FindElementByXPath("//a[@title='Next page']").Click
- 定位内部
<span>标签:
bot.FindElementByXPath("//a[@title='Next page']/span[@class='ico-navigate-right blueText']").Click
你之前的错误原因
- CSS选择器错误:你写的
class.btn.btn-link是错误语法,class选择器直接用.开头即可(如.btn),且btn btn-link是<a>标签的class,不是<li>的。 - XPath错误:
//'li'多了单引号(应为//li),且btn btn-link是<a>的class而非<li>的,最后缺少闭合括号,导致语法无效。
内容的提问来源于stack exchange,提问作者Julio Joshué Puertas Valdez
相关产品推荐
相关产品推荐

