尝试从谷歌搜索编辑框获取并打印数据,但出现 InvalidElementStateException

2023-12-11

我试图在谷歌搜索编辑框中写一个单词并捕获所有相关的列表项并显示它。但在这样做时我遇到了例外 org.openqa.selenium.InvalidElementStateException:元素已禁用,因此不能用于操作。我经历了相同的异常相关问题,并根据他们更改了我的代码,但没有一个有帮助。

import java.util.List;
import java.util.concurrent.TimeUnit;
import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.firefox.FirefoxDriver;
import org.openqa.selenium.firefox.FirefoxProfile;

public class AutoIt {
 public static void main(String[] args){
  WebDriver window;
  FirefoxProfile profile = new FirefoxProfile();
  profile.setEnableNativeEvents(false);
  window = new FirefoxDriver(profile);
try{
window.get("https://www.google.co.in/");
window.manage().window().maximize();
window.findElement(By.id("gs_htif0")).sendKeys("Shantanu Nandan");
window.manage().timeouts().implicitlyWait(10,TimeUnit.SECONDS);
List<WebElement> list=window.findElements(By.xpath("//td[@style='width: 100%;']/span"));
window.manage().timeouts().implicitlyWait(10,TimeUnit.SECONDS);
for(WebElement data:list){
    System.out.println(data.getAttribute("value"));
 }//for
}//try
catch(Exception e){
System.out.println("Got a exception");
    e.printStackTrace();
    window.close();
}//catch
finally{
    System.out.println("Finally Block Executed ....");
    window.close();
    window.quit();
}//finally
  }//main
}//class

我对此代码遇到的异常

org.openqa.selenium.InvalidElementStateException: Element is disabled and so may not be used for actions
Command duration or timeout: 47 milliseconds
Build info: version: '2.39.0', revision: 'ff23eac', time: '2013-12-16 16:12:12'
System info: host: 'omega-d52b83806', ip: '10.0.0.4', os.name: 'Windows XP', os.arch:     'x86', os.version: '5.1', java.version: '1.7.0_45'
Session ID: d29ef567-95a8-47ce-bf84-c510cbb2756d
Driver info: org.openqa.selenium.firefox.FirefoxDriver
Capabilities [{platform=XP, acceptSslCerts=true, javascriptEnabled=true,     cssSelectorsEnabled=true, databaseEnabled=true, browserName=firefox, handlesAlerts=true,   browserConnectionEnabled=true, webStorageEnabled=true, nativeEvents=false, rotatable=false, locationContextEnabled=true, applicationCacheEnabled=true, takesScreenshot=true, version=29.0.1}]
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source)
at java.lang.reflect.Constructor.newInstance(Unknown Source)
at org.openqa.selenium.remote.ErrorHandler.createThrowable(ErrorHandler.java:193)
at      org.openqa.selenium.remote.ErrorHandler.throwIfResponseFailed(ErrorHandler.java:145)
at org.openqa.selenium.remote.RemoteWebDriver.execute(RemoteWebDriver.java:554)
at org.openqa.selenium.remote.RemoteWebElement.execute(RemoteWebElement.java:268)
at org.openqa.selenium.remote.RemoteWebElement.sendKeys(RemoteWebElement.java:89)
at AutoIt.main(AutoIt.java:21)
  Caused by: org.openqa.selenium.remote.ErrorHandler$UnknownServerException: Element is disabled and so may not be used for actions
  Build info: version: '2.39.0', revision: 'ff23eac', time: '2013-12-16 16:12:12'
  System info: host: 'omega-d52b83806', ip: '10.0.0.4', os.name: 'Windows XP', os.arch: 'x86', os.version: '5.1', java.version: '1.7.0_45'
Driver info: driver.version: unknown
at <anonymous class>.fxdriver.preconditions.enabled(file:///C:/DOCUME~1/OMEGA/LOCALS~1/Temp/anonymous7567378475668954944webdriver-profile/extensions/[email protected]/components/command_processor.js:8185)
at <anonymous class>.DelayedCommand.prototype.checkPreconditions_(file:///C:/DOCUME~1/OMEGA/LOCALS~1/Temp/anonymous7567378475668954944webdriver-profile/extensions/[email protected]/components/command_processor.js:10814)
at <anonymous class>.DelayedCommand.prototype.executeInternal_/h(file:///C:/DOCUME~1/OMEGA/LOCALS~1/Temp/anonymous7567378475668954944webdriver-profile/extensions/[email protected]/components/command_processor.js:10831)
at <anonymous class>.DelayedCommand.prototype.executeInternal_(file:///C:/DOCUME~1/OMEGA/LOCALS~1/Temp/anonymous7567378475668954944webdriver-profile/extensions/[email protected]/components/command_processor.js:10836)
at <anonymous class>.DelayedCommand.prototype.execute/<(file:///C:/DOCUME~1/OMEGA/LOCALS~1/Temp/anonymous7567378475668954944webdriver-profile/extensions/[email protected]/components/command_processor.js:10778)
Finally Block Executed ....

您选择了错误的元素。

使用下面的搜索文本框

wb=window.findElement(By.name("q"));

使用以下内容获取输出建议。

List<WebElement> list = window.findElements(By.className("gsq_a"));

要从列表中获取值,请使用 getText() 方法而不是 getAttribute()。

for (WebElement data : list) {
System.out.println(data.getText());
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

尝试从谷歌搜索编辑框获取并打印数据,但出现 InvalidElementStateException 的相关文章

  • 是什么决定了从 lambda 创建哪个函数式接口?

    请考虑这个例子 import java util function Consumer public class Example public static void main String args Example example new
  • 这个函数(for循环)空间复杂度是O(1)还是O(n)?

    public void check 10 for string i list Integer a hashtable get i if a gt 10 hashtable remove i 这是 O 1 还是 O n 我猜测 O n 但不是
  • 为什么 Selenium RC 这么慢?

    一段时间以来 我一直在研究 Selenium RC 以便对我的 Web 应用程序进行功能测试 我现在发现了一种非常有效的测试策略 以至于我不想放弃 Selenium RC 在花了数周时间试图找到一种验证 ASP NET 验证控件的好方法之后
  • JavaFX 中具有自定义内容的 ListView

    How i can make custom ListView with JavaFx for my app I need HBox with image and 2 Labels for each line listView 您可以通过查看
  • 如何模拟从抽象类继承的受保护子类方法?

    如何使用 Mockito 或 PowerMock 模拟由子类实现但从抽象超类继承的受保护方法 换句话说 我想在模拟 doSomethingElse 的同时测试 doSomething 方法 抽象超类 public abstract clas
  • Hazelcast 分布式锁与 iMap

    我们目前使用 Hazelcast 3 1 5 我有一个简单的分布式锁定机制 应该可以跨多个 JVM 节点提供线程安全性 代码非常简单 private static HazelcastInstance hInst getHazelcastIn
  • 使用 SQLITE 按最近的纬度和经度坐标排序

    我必须获得一个 SQLite SQL 语句 以便在给定初始位置的情况下按最近的纬度和经度坐标进行排序 这是我在 sqlite 数据库中的表的例句 SELECT id name lat lng FROM items EXAMPLE RESUL
  • 很好地处理数据库约束错误

    再一次 它应该很简单 我的任务是在我们的应用程序的域对象中放置一个具有唯一约束的特定字段 这本身并不是一个很大的挑战 我刚刚做了以下事情 public class Location more fields Column unique tru
  • 普罗米修斯指标 - 未找到

    我有 Spring Boot 应用程序 并且正在使用 vertx 我想监控服务和 jvm 为此我选择了 Prometheus 这是我的监控配置类 Configuration public class MonitoringConfig Bea
  • 如何在 Java 中测试一个类是否正确实现了 Serialized(不仅仅是 Serialized 的实例)

    我正在实现一个可序列化的类 因此它是一个与 RMI 一起使用的值对象 但我需要测试一下 有没有办法轻松做到这一点 澄清 我正在实现该类 因此在类定义中添加 Serialized 很简单 我需要手动序列化 反序列化它以查看它是否有效 我找到了
  • 欧洲中部时间 14 日 3 月 30 日星期五 00:00:00 至 日/月/年

    我尝试解析格式日期Fri Mar 30 00 00 00 CET 14至 日 月 年 这是我的代码 SimpleDateFormat formatter new SimpleDateFormat dd MM yyyy System out
  • 如何知道抛出了哪个异常

    我正在对我们的代码库进行审查 有很多这样的陈述 try doSomething catch Exception e 但我想要一种方法来知道 doSomething 抛出了哪个异常 在 doSomething 的实现中没有 throw 语句
  • Struts 2 + Sitemesh 3 集成 - FreemarkerDecoratorServlet 中的 NPE

    我将 Struts 2 版本 2 3 14 3 与 Sitemesh 3 版本 3 0 alpha 2 一起使用 并且在某些情况下遇到 NullPointerException 首先 这是我的 web xml 中的 struts2 site
  • 测试弱引用

    在 Java 中测试弱引用的正确方法是什么 我最初的想法是执行以下操作 public class WeakReferenceTest public class Target private String value public Targe
  • Netty:阻止调用以获取连接的服务器通道?

    呼吁ServerBootstrap bind 返回一个Channel但这不是在Connected状态 因此不能用于写入客户端 Netty 文档中的所有示例都显示写入Channel从它的ChannelHandler的事件如channelCon
  • Cucumber Java 与 Spring Boot 集成 - Spring @Autowired 抛出 NullPointer 异常

    我正在为 Spring boot 应用程序编写 cucumber java 单元测试来测试每个功能 当我与 Spring Boot 集成时 Autowired 类抛出 NullPointer 异常 Spring Boot应用程序类 Spri
  • 游戏内的java.awt.Robot?

    我正在尝试使用下面的代码来模拟击键 当我打开记事本时 它工作正常 但当我打开我想使用它的游戏时 它没有执行任何操作 所以按键似乎不起作用 我尝试模拟鼠标移动和点击 这些动作确实有效 有谁知道如何解决这个问题 我发现这个问题 如何在游戏中使用
  • 替换后增量

    我自己已经有一个问题了 但我想扩展它后增量示例 https stackoverflow com questions 51308967 post increment with example char a D int b 5 System o
  • Java中的Object类是什么?

    什么是或什么类型private Object obj Object http download oracle com javase 6 docs api java lang Object html是Java继承层次结构中每个类的最终祖先 从
  • Trie 数据结构 - Java [关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 是否有任何库或文档 链接提供了在 java 中实现 Trie 数据结构的更多信息 任何帮助都会很棒 Thanks 你可以阅读Java特里树

随机推荐

  • 正则表达式 - 提取域名和 TLD

    我正在尝试从字符串中提取域名和 TLD 如果存在 对于 testing co uk 我想要一个包含值的数组 testing co uk 对于 testing c 我想要一个具有值的数组 testing 对于 test ing co uk c
  • 使用 matplotlib / numpy 进行线性回归

    我正在尝试在我生成的散点图上生成线性回归 但是我的数据采用列表格式 并且我可以找到使用的所有示例polyfit需要使用arange arange但不接受列表 我已经搜索了很多有关如何将列表转换为数组的信息 但似乎没有什么明确的 我错过了什么
  • 使用子选择更改表

    我有两张桌子 一个是字段信息表 另一个是字段数据表 默认情况下 所有字段数据表列都设置为某种类型的文本字段 varchar text 等 我想做的是这个 而不是创建手动 ALTER TABLE 查询 ALTER TABLE field da
  • 仅将元素放入 iframe 内,否则恢复

    EDIT 1 这是drag html 主页
  • 如何在具有多个域的 ASP.NET MVC4 应用程序中允许 Windows 身份验证?

    关于 MVC4 应用程序中的 Windows Auth 的两个问题 如何设置才能针对两个 Windows 域进行身份验证 我正在尝试做的事情 Authorize Roles DOMAINONE Group Name public class
  • 相互依赖的类模板和 std::is_base_of 专业化

    我对以下情况感到有点困惑 我在其中启用了专业化is base of is base of需要正在检查的类型的完整定义可用 但是 正在专门化的类型被用作正在检查的基类的类型的成员 因此两者都需要在另一个之前定义 并且我无法转发声明继承关系 令
  • onActivityResult 中的空意图附加内容

    我有两项活动 首先像这样调用第二个 Intent intent new Intent this Second class startActivityForResult intent 1 返回第二个数据 Intent intent new I
  • 使用 Google Maps SDK 在地图上绘制错误的折线

    我正在尝试使用 Google Maps SDK 在地图上绘制路线 This是我正在调用的 URL 我解析对坐标数组的 JSON 响应 id jsonResponse NSJSONSerialization JSONObjectWithDat
  • 在 C++ 程序中添加不必要的大括号 { } 是否会减慢速度?

    这可能是一个愚蠢的问题 但我对 C 和一般编程很陌生 我在这里找不到答案 我知道在 C 中 在某些情况下是可选的 例如 如果您有一个简单的 if 语句 其中仅执行一个操作 则不需要用 将其括起来 我只是想知道额外的括号是否对程序的速度有任何
  • 使用链接器脚本重命名符号

    是否可以使用链接描述文件或映射文件来重命名符号 我正在尝试修改一些用 C 和 Fortran 混合编写的代码 以便它可以在 Linux 上与多个 Fortran 编译器一起工作 目前它是为 Solaris Studio 编译器编写的 并且启
  • Volley - NetworkImageView 有时不显示错误图像?

    所以我决定尝试一下新的排球库如上所示谷歌IO 2013 我在使用简单的解决方案时尝试过NetworkImageView在一个上显示多个图像GridView 它运行良好并显示图像 但如果我让它下载图像 然后在下载过程中关闭 WiFi 它不会显
  • Visual Studio 2010 Professional Beta 2 上的 Windows Mobile 6 Standard SDK 刷新安装问题

    当我安装Windows Mobile 6 标准 SDK 更新我收到错误 未安装 Visual Studio 2005 SP1 或更高版本 我安装了 Visual Studio 2010 Professional Beta 2 请你告诉我如何
  • 使用 props 以纯文本或数组访问对象路径

    考虑以下对象和存储在对象内的值的路径 var obj a 1 b a x 2 b 3 c 4 var path b a x 获取对象路径中的内容的最佳方法 最佳性能 是什么 使用 eval path obj concat path var
  • vba中dim和set有什么区别

    请原谅我 我是 VBA 新手 有时我用 Dim r as Range r Range A1 其他时候我用 Set r Range A1 有什么不同 我什么时候应该使用什么 没有理由使用set除非引用对象引用 最好只在这种情况下使用它 对于所
  • 画布上的 Android Center 文本

    我正在尝试使用下面的代码显示文本 问题是文本没有水平居中 当我设置坐标时drawText 它将文本的底部设置在此位置 我希望绘制文本 以便文本也水平居中 这是进一步显示我的问题的图片 Override protected void onDr
  • Toast 类型中的方法 makeText 不适用于参数

    我正在使用 ViewPagerIndicator 并尝试使用 Toast 在滚动到下一个片段页面时显示 我收到以下错误 The method makeText Context CharSequence int in the type Toa
  • C# 获取文件更改事件

    我确实有一个程序可以在文本文件中记录一些特定事件 它使文件保持打开状态 现在我想编写第二个应用程序 在表单上显示这些日志 我可以为另一个进程打开的文本文件中的任何更改设置事件吗 或者我必须定期阅读 thanks 看看文件系统观察者类
  • 选择对不同数据库服务器上的 2 个表进行查询

    我试图通过在经典 ASP 中查询 2 个数据库 Sybase 来生成报告 我创建了 2 个连接字符串 数据库的 connA数据库 B 的 connB 两个数据库都存在于同一服务器上 不知道这是否重要 Queries q1 SELECT co
  • 如何读写Excel文件

    我想从 Java 读取和写入一个 3 列 N 行的 Excel 文件 在每个单元格中打印一个字符串 谁能给我简单的代码片段 我是否需要使用任何外部库或者 Java 是否有内置支持 我想做以下事情 for i 0 i
  • 尝试从谷歌搜索编辑框获取并打印数据,但出现 InvalidElementStateException

    我试图在谷歌搜索编辑框中写一个单词并捕获所有相关的列表项并显示它 但在这样做时我遇到了例外 org openqa selenium InvalidElementStateException 元素已禁用 因此不能用于操作 我经历了相同的异常相