gpt4 book ai didi

java - 我可以用 Selenium 获取这个输入元素吗?

转载 作者:太空宇宙 更新时间:2023-11-04 09:50:09 25 4
gpt4 key购买 nike

我是 Selenium 新手。我一直在寻找所有可能的方法来解决这个问题(目前我认为这是无法解决的)我有一个带有此输入的网页(无法共享):

/html/body/table/tbody/tr[2]/td[2]/table/tbody/tr[3]/td/table/tbody/tr/td[2]/table/tbody/tr[2]/td/div/iframe/#document/html/body/div[2]/div/iframe/#document/html/frameset/frame/#document/html/frameset/frameset/frameset/frame/#document/html/body/div/form/table/tbody/tr[2]/td[2]/input

(如您所见,该结构混合了框架、iframe 和框架集;其中一些有 id,其他名称有一些没有)

The problem is that Selenium will not find the element by any method I have tested

。首先,我尝试使用一个简单的 driver.findElement(By.all of those)

在它们不起作用之后,我开始在网上查找,但我找不到为什么我无法处理这个问题。

它是网页中唯一的输入,并且有一个 id 作为属性,因此应该很容易。

This is the class where I have been trying to make it work如果你想检查我不成功的工作,我将最后的努力集中在第 8 次尝试上

正如你所看到的,我一直在尝试通过多种方式获取它,帧确实看起来是一个问题,但不是它们,也不是等待。

Is it really no way of getting this element? Is it one of those cases where Selenium can't automate? Or it is that I'm missing something.

对象可见,甚至没有滚动条,整个页面完美地适合屏幕,Xpath 是我测试的第一个选择,但不起作用

提前谢谢您。

最佳答案

我不知道这是否是问题所在,但是您尝试使用的元素是否可见,或者您需要滚动才能查看它?如果它不可见,请尝试使用它来滚动一点:

JavascriptExecutor js = (JavascriptExecutor) driver;
js.executeScript("window.scrollBy(0,1000)");

另一种可能的解决方案是尝试使用绝对 xpath 而不是相对 xpath。有多种工具可以查找 html 页面中元素的绝对 xpath。然后你可以使用

driver.findElement(By.xpath(absoluteXpath));

关于java - 我可以用 Selenium 获取这个输入元素吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54867695/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com