当前位置: 首页 > 面试题库 >

使用Selenium Web驱动程序检索HTML输入的值

施誉
2023-03-14
问题内容

在Webapp的HTML中,有以下代码

<input type="text" name="prettyTime" id="prettyTime" class="ui-state-disabled prettyTime"  readonly="readonly">

页面上实际显示的是显示时间的字符串。

selenium网络驱动器,我有一个WebElement对象指的是<input>使用

WebElement timeStamp = waitForElement(By.id("prettyTime"));

我想获取的值,WebElement换句话说,就是页面上打印的内容。我尝试了所有的WebElement吸气剂,但没有任何方法可以检索用户看到的实际值。有什么帮助吗?谢谢。


问题答案:

尝试 element.getAttribute("value")

该text属性用于元素标签中的文本。对于输入元素,显示的文本不是由<input>标签包裹的,而是位于value属性内。

注意:大小写很重要。如果指定“值”,则将返回“空”值。至少对于C#如此。



 类似资料:
  • 问题内容: 我试图单击此页面上的元素: 在这一点上,我想单击“现金流量”,“资产负债表”或“季度”。我知道这些按钮已加载,因为我可以使用BeautifulSoup从页面源中提取它们。但是,当我尝试使用Selenium时: 全部返回“无法定位元素”,除了“季度”返回一个元素,但它位于图上方的一个元素而不是我感兴趣的表格上方的一个元素。 我认为这是由于位于错误的iframe中,而我找到了所有ifram

  • 问题内容: 我正在使用sqlsrv驱动程序的PHP MSSQL项目上。阻止SQL注入攻击的最佳方法是什么?我需要类似mysql_real_escape_string()的东西,但要使用sqlsrv驱动程序。 问题答案: 最好的方法是不要编写SQL,以便您需要使用的类似物,可以通过使用占位符作为值,然后在执行语句或打开时传递变量(否则将由来处理)来实现。光标或其他任何东西。 如果失败,请查看;的输出

  • 我试图用用户定义的类型作为分区键在cassandra中存储对象。我使用datastax java驱动程序进行对象映射,虽然我能够插入到数据库中,但我无法检索对象。如果我将分区键更改为使用非udt(如文本),我就能够保存和检索(即使对象上有其他相同类型的udt)。从阅读文档中可以看出,允许UDT作为密钥。我也没有发现任何迹象表明java驱动程序不支持UDT作为键。在对象映射过程中,它看起来是失败的,

  • 我假设Selenium打开的chrome浏览会话将与google chrome本地安装相同。但是当我尝试在这个网站上搜索时,即使只是用selenium打开它并手动控制搜索过程,我会得到一个错误信息,当我使用常规chrome与我自己的个人资料或在incognito窗口中搜索结果返回良好。每当我搜索这个问题,我发现结果指出鼠标移动或点击模式提供它。但情况并非如此,因为我在打开浏览器后尝试手动控制。ht

  • 我正在编写代码来打印三个驱动程序的详细信息,但问题是程序正确地输入了驱动程序1,但跳过了驱动程序2和3名称的输入,尽管提供了输入,它还是将打印为。 输出是这样的:

  • 我在Windows上的netbeans项目中使用Derby遇到了麻烦。我刚刚下载并配置了Derby,并将CLASSPATH变量设置为 当我运行命令时 一切都和预期的一样,我得到了输出 等等。 现在,当我运行一个直接从命令提示符使用derby的Java程序时,一切都运行得很好: 但当我尝试从Netbeans运行完全相同的程序时,我得到以下错误 为什么驱动程序在命令提示符下工作,而不是在NetBean