如何使用 class 获取我之前找到的图像的 xpath?
How to get xpath of an image that I found earlier using its class?
所以,我有一张 HTML class '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
所以我的想法是:
- 使用它找到第一张图片 class
- 获取其 xpath
- 从 xpath 中提取变量
- 使用变量和 xpath 的其余部分查找其他元素
现在:如何获取第一个元素的 xpath?
如果有人还没有注意到,我正在使用 python 和 selenium。
您可以在 单个 XPath 表达式中完成:
.//*[@id='mainBody']/table/tbody/tr[td[2]/img[contains(@class, 'anImage')]]/td[7]/a/img
tr[td[2]/img[contains(@class, 'anImage')]]
部分是关键部分 - 基本上,我们在第二个 td
中找到包含带有 class anImage
图像的行。然后,在该行中,我们在第 7 个 td
元素的 a
标签中获取 img
标签。
所以,我有一张 HTML class '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
所以我的想法是:
- 使用它找到第一张图片 class
- 获取其 xpath
- 从 xpath 中提取变量
- 使用变量和 xpath 的其余部分查找其他元素
现在:如何获取第一个元素的 xpath?
如果有人还没有注意到,我正在使用 python 和 selenium。
您可以在 单个 XPath 表达式中完成:
.//*[@id='mainBody']/table/tbody/tr[td[2]/img[contains(@class, 'anImage')]]/td[7]/a/img
tr[td[2]/img[contains(@class, 'anImage')]]
部分是关键部分 - 基本上,我们在第二个 td
中找到包含带有 class anImage
图像的行。然后,在该行中,我们在第 7 个 td
元素的 a
标签中获取 img
标签。