Chrome浏览器广告点击

时间:2019-01-30 10:34:08

标签: c# google-chrome selenium-webdriver webdriver selenium-chromedriver

我已经编写了这段代码

Employee(int num, int sal, string nm) : IDNumber(num), salary(sal), Person(nm) {};

用于单击我们在Chrome浏览器中搜索时出现的广告,但只是成功单击了第一个广告,但下次出现此错误 enter image description here 有人帮我解决了这个问题,我变得很沮丧。

1 个答案:

答案 0 :(得分:0)

您将获得过时的元素引用异常,这是在您正在操作的元素不再存在或是旧元素时出现的,这就是为什么它仅在第一次而不是之后才起作用的原因。 因此,要解决此问题,您需要在点击一个广告后每次获取新元素。
例如(我正在使用Java,因此请将代码转换为您使用的任何语言):

List<WebElement> CountingAds = driver.findElements(By.xpath("//a[@onmousedown='return google.arwt(this)']"));
CountingAds.get(0).click();

现在再次获取webelement列表,然后再次单击元素,就像上面的代码一样。这样可以解决您的问题。