Selenium html webdriver 無法找到元素



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

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>

我想知道我是否遇到了这个问题,因为 Web 驱动程序不再指向正确的站点?

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

最新更新