【发布时间】:2021-12-31 04:20:26
【问题描述】:
我正在构建轮盘赌机器人,我通过 xpath 查找元素,我可以获得它的类属性等,但我无法点击它。它总是可点击的(机器人找到 iframe,然后找到元素并点击它的工作,但 iframe 中的这个网站游戏屏幕>iframe bot 可以找到按钮但不点击)
firefox.SwitchTo().Window(firefox.WindowHandles.Last());
var DBViFrame = firefox.FindElement(By.TagName("iframe"));
firefox.SwitchTo().Frame(DBViFrame);
DBViFrame = firefox.FindElement(By.TagName("iframe"));
firefox.SwitchTo().Frame(DBViFrame);
var dataEntryButton = firefox.FindElement(By.XPath("//*[name()=\"svg\"]//*[name()=\"g\"]//*[name()=\"rect\"][" + num + "]"));
dataEntryButton.Click();
【问题讨论】:
-
XPATH 是否真的找到了该元素?尝试检查 .size() 方法是否不返回 0
dataEntryButton.size() != 0 -
为什么这些行重复
var DBViFrame = firefox.FindElement(By.TagName("iframe")); firefox.SwitchTo().Frame(DBViFrame);?如果它是嵌套 iframe,则应先切换到父 iframe,然后再切换到子 iframe。此外,它们的定位器应该不同。 -
两个 iframe 是嵌套的,你能帮我切换一下我有点新手吗
标签: c# selenium selenium-webdriver geckodriver