gpt4 book ai didi

javascript - 为 Selenium Webdriver 创建以下 href 的 Xpath

转载 作者:行者123 更新时间:2023-12-03 10:42:54 24 4
gpt4 key购买 nike

请帮助我为以下 href 创建 Xpath。我正在使用 Selenium webdriver 并且只有 IE 浏览器。以下是 HTML:需要 Xpath:a href="javascript:OnEventQueue();">。我只能使用IE浏览器,需要点击这个链接。

 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML Transitional//EN"><META http-equiv="Content-Type" content="text/html; charset=windows-1252">

<html>
<body>
<form name="runevent1" action="/epace/epace-cgi/eglcgids.exe?sessionid=" method="post" btnSubmit="javascript:preSumbit()" EParams="http://vaim1-apt-120/epace/epace-cgi/eglcgids.exe?sessionid=&Action=runevent1&EventType=&EventInst=#" EParamOptions="http://vaim1-apt-120/epace/epace-cgi/eglcgids.exe?sessionid=&Action=runevent1&EventType=&EventInst=#">
<table width="100%" align="center" border="0">
<tbody>
<tr class="topMenu">
<td align="right">
<span id="idSpanActionLinks">
<a href="javascript:OnEventQueue();">
<font class="topMenu">Event Queue</font>
</a>
</span>
</td>
</tr>
</tbody>
</table>
</form>
</body>
</html>

最佳答案

使用以下算法来选择您的元素。

CSS

element[attribute(^|*|$|~)='attribute value']

Xpath

//element[(@attribute|contains|starts-with|ends-with(@attribute, 'value'))='value'

xpath 有点丑,而且绝对不正确,但 CSS 算法是正确的。

当您想要匹配任何属性时,包括 href如果你想,使用这个算法。

问自己这些问题:

  1. 我选择的元素是什么?
  2. 我选择的属性是什么?
  3. 该属性是否唯一?

就您而言,#1 的答案是 <a> 。第 2 号的答案是 href 。答案#3,可能不是,因为可能还有更多 href是这样的。而 ID 通常是唯一的。 (毕竟它被称为标识符)。你能做的就是查看父级并使用它的 ID。

在 CSS 中:span#idSpanActionLinks > a会工作得很好。 (* # 只是 id see here 的 CSS 快捷方式)

在 Xpath 中://span[@id='idSpaceActionLinks']/a

编辑

在您发表评论后,因为您想要匹配 href ,给你:

CSS

a[href*='OnEventQueue']

Xpath

//a[contains(@href, 'OnEventQueue')]

两者都可以。

请注意,这两个语句的英语意思是:

find me an <a> element, whose attribute href contains the value OnEventQueue

关于javascript - 为 Selenium Webdriver 创建以下 href 的 Xpath,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28696708/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com