java - Selenium html webdriver 无法定位元素

标签 java html selenium

我尝试四处寻找这个错误,但大多数时候问题是拼写错误,我三次检查了我的拼写。 所以问题就在这里。我想浏览一个网站。我有这个作为我的代码:

WebDriver driver = new HtmlUnitDriver();
driver.get("http://genome.ucsc.edu/cgi-bin/hgTables");
WebElement element = driver.findElement(By.name("hgta_doFilterPage"));
element.submit();
WebElement filter = driver.findElement(By.name("hgta_fil.v.hg19.refGene.name.pat"));
filter.sendKeys("");

我尝试访问列出的网站,进入“过滤器”页面部分,单击“创建”,然后在下一页的“名称”部分中输入一些值,然后再次提交。 但我收到此错误:

Exception in thread "main" org.openqa.selenium.NoSuchElementException: Unable to locate element with name: hgta_fil.v.hg19.refGene.name.pat
For documentation on this error, please visit: http://seleniumhq.org/exceptions/no_such_element.html
Build info: version: '2.37.1', revision: 'a7c61cbd68657e133ae96672cf995890bad2ee42', time: '2013-10-21 09:08:07'
System info: host: 'OSXLAP00693.local', ip: '192.168.2.9', os.name: 'Mac OS X', os.arch: 'x86_64', os.version: '10.9.1', java.version: '1.7.0_25'

我仔细检查了页面上的命名:view-source:http://genome.ucsc.edu/cgi-bin/hgTables 并发现:

<TR VALIGN=BOTTOM align='left'><TD colspan=2> name </TD><TD>
<SELECT NAME='hgta_fil.v.hg19.knownGene.name.dd' class='normalText' style='width: 76px' >
<OPTION SELECTED>does</OPTION>
<OPTION>doesn't</OPTION>
</SELECT>
</TD><TD>match </TD><TD>
<INPUT TYPE=TEXT class='inputBox' NAME="hgta_fil.v.hg19.knownGene.name.pat" style='width: 140px' VALUE="*">
&nbsp; </TD></TR>
<TR VALIGN=BOTTOM align='left'><TD colspan=2> chrom </TD><TD>
<SELECT NAME='hgta_fil.v.hg19.knownGene.chrom.dd' class='normalText' style='width: 76px' ><!-- Here -->
<OPTION SELECTED>does</OPTION>
<OPTION>doesn't</OPTION>
</SELECT>
</TD><TD>match </TD><TD>

我想知道是否因为网络驱动程序不再指向正确的站点而遇到此问题?

最佳答案

源中的输入框的名称为 hgta_fil.v.hg19.knownGene.name.pat,但您正在搜索名称为 hgta_fil.v.hg19.refGene 的元素.name.pat.

关于java - Selenium html webdriver 无法定位元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20666020/

相关文章:

html - Bootstrap 按钮与水平形式的文本输入不在同一行

java - 无法将文本发送到文本框元素

Java - 非最终领域的同步

java - 不同颜色值的JTable

java - Scanner vs. StringTokenizer vs. String.Split

python - 使用 python selenium 在浏览器中创建警报窗口

java - 为这个庞大的列表编写更紧凑的代码

java - 解释以下 CMD 脚本中的一些行以启动 Topcoder UML 工具

html - 在按钮内放置背景图像

javascript - 通过菜单按钮滚动时 JavaScript 出现问题