如何获取我之前使用其类找到的图像的xpath?

问题描述 投票:1回答:1

所以,我有一个HTML类'anImage'的图像。此图像的XPath为:

.//*[@id='mainBody']/table/tbody/tr[variable]/td[2]/img

variable每次看到网站都会改变,可以是4,可以是7等。

在该图像旁边,我有一个我想要点击的图像,它有一个xpath:

.//*[@id='mainBody']/table/tbody/tr[variable]/td[7]/a/img

所以我的想法是:

  1. 使用它的类找到第一个图像
  2. 获取它的xpath
  3. 从xpath中提取变量
  4. 使用变量和xpath的其余部分查找其他元素

现在:我如何获得第一个元素的xpath?

如果有人还没有注意到,我正在使用python和selenium。

python python-2.7 selenium xpath selenium-webdriver
1个回答
1
投票

您可以在单个XPath表达式中执行此操作:

.//*[@id='mainBody']/table/tbody/tr[td[2]/img[contains(@class, 'anImage')]]/td[7]/a/img

tr[td[2]/img[contains(@class, 'anImage')]]部分是关键部分 - 基本上,我们在第二个anImage中找到包含图像的行td。然后,在该位置的行中,我们在第7个img元素中的a标记中获取td标记。

© www.soinside.com 2019 - 2024. All rights reserved.