我正在使用 Selenium 和 Firefox Webdriver 来处理页面上的元素,该页面具有唯一的 CSS ID(在每次页面加载时),但 ID 每次都会更改,因此我无法使用它们来定位元素。这是因为该页面是使用 ExtJS 构建的 Web 应用程序。
我正在尝试使用 Firebug 来获取元素信息。
我需要找到一个唯一的 xPath 或选择器,以便我可以使用 Selenium 单独选择每个元素。
当我使用 Firebug 复制 xPath 时,我得到如下值:
//*[@id="ext-gen1302"]
但是,下次加载页面时,它看起来像这样:
//*[@id="ext-gen1595"]
在该页面上,每个元素都有这种 ID 格式,因此无法使用 CSS ID 来查找元素。
我想获取根据其在 DOM 中的位置的 xPath,但 Firebug 只会返回 ID xPath,因为它对于该页面实例是唯一的。
/html/body/div[4]/div[3]/div[4]/div/div/div/span[2]/span
我怎样才能让 Firebug(或其他可以以类似速度工作的工具)为我提供一个独特的选择器,即使在 ext-gen ID 更改后,它也可以用于使用 Selenium 查找元素?