当前位置: 首页 > 知识库问答 >
问题:

访问硒网络驱动程序中的博主搜索框

锺离明煦
2023-03-14

我尝试用java的selenium webdriver访问blogger搜索框。但是我也有例外,比如

线程“主”组织中的异常 openqa.硒.NoSuch元素异常: 无法找到元素: {“method”:“name”,“selector”:“q”}

我的代码是这样的.....

driver.findElement(By.name("q")).sendKeys("Test");

driver.findElement(By.name("q")).sendKeys("kjddbsxkjca");

但它不工作,我也尝试与类名,xpath,id,名称,但它不工作..

请给我任何建议?

共有1个答案

经景辉
2023-03-14

因为它在iframe中。您需要先使用name或id切换到它。

driver.switchTo().frame("navbar-iframe");
driver.findElement(By.name("q")).sendKeys("Test");

或者,您可以找到框架元素(使用id、name、css选择器或xpath),然后切换。

WebElement iframe = driver.findElement(By.id("navbar-iframe"));
// or other locators, By.cssSelector("#navbar-iframe") or By.xpath(".//iframe[@id='navbar-iframe']")

driver.switchTo().frame(iframe);
driver.findElement(By.name("q")).sendKeys("Test");
 类似资料:
  • 正在研究尝试理解显式等待的方法。 所以单选按钮被点击后,输入形式发生了变化,所以我把给它一个时间元素出现,否则会出错“元素不可见......”。所以我认为现在是理解显式等待的好时机,因为我需要等到元素出现。 但出现错误“Selenium::WebDriver::error::ElementNotVisibleError:Element当前不可见,因此可能无法与之交互”。为什么这段代码不等到元素出现

  • 我的目标是使用硒为Python自动在线账单支付。 使用以下代码使用 Web 驱动程序登录成功: 登录后,一个新的页面加载,我的下一步是点击一个链接。代码: 什么也没发生。没有导航到该法案 但仍然没有。我还应该尝试其他什么? 错误: Traceback(最近调用的最后一次):File"/home/队长/. PyCharmEdu30/config/划痕/scratch_1.py",第12行,在clic

  • 这是一个非常简单的脚本,但我需要帮助。 当没有为键入的文本列出建议时,网络驱动程序会单击谷歌搜索按钮(例如 macintosh)。但是当建议出现时,我如何仍然让网络驱动程序点击谷歌搜索按钮。我的代码如下: } 但得到以下错误。请帮助 在端口3288上启动ChromeDriver 2.40.565498(ea082db3280dd6843ebfb08a625e3eb905c4f5ab)仅允许本地连接

  • 我有一个问题,上传文件到网络系统使用硒驱动程序。所以在我的页面上,我没有任何输入来设置文件路径,而且我在网络上找到的大多数解决方案都不适合我。我必须点击上传文件按钮,然后在窗口对话框中设置文件的路径。我找到了winforms SendKeys类中使用的方法: 它的工作,但只有当测试有完全控制的机器(如果没有-路径已发送到某处不对话)。这就是问题所在,因为我无法完全控制运行测试的机器。你知道不使用S

  • 我查了一下,我怎么能默默地运行硒:在这里找到了下一个伟大的答案 我正在尝试让selenium正常运行,直到一些操作完成,然后在后台运行它。 有可能吗? 高级Oz中的thanx

  • 下面是我为firefox浏览器初始化的selenium web驱动程序。 尽管我给出了隐式等待,但我没有等待元素。它会立即抛出not found异常。如果我放那么它工作正常,没有任何问题。但是把现在测试用例包含更多线程的任何地方。sleep比实际的测试用例代码低。有人能给我建议正确的方法吗?