Python Selenium 通过 class, if, a (href or class) 查找具有以下兄弟元素的元素
Python Selenium find element with following sibling by class, id, a (hreff or class)
我需要帮助找到一个确切的元素,然后根据特定的 id 号用 following-sibling 单击它,然后 classes 和一个(href 或 class)。
这是简化的代码,下面的例子多次出现只是不同的 id:
<div class="class_1" id="1234567">
<div class="class_2">
<div class="class_3">
<div class="class_3.1">
<div class="class_3.2">
<div class="class_3.3">
<div class="class_3.3.1">
<div class="class_3.3.1.1">
<div class="class_3.3.1.2">
<div class="class_3.3.1.3">
<a href="javascript:void(0)" class="event-media-icon live-icon icon-white" data-sport="soccer"></a>
...
我如何找到一个带有 id 和 class 的元素,例如像这样的东西并点击它:
driver.find_element(By.XPATH, 'class=class_1 and id="2222222" and class="event-media-icon live-icon icon-white').click()
您正在寻找的 xpath
将如下所示:
//div[@class='class_1' and(@id='1234567')]//a[@data-sport='soccer']
我猜上面 div
和目标 a
之间的元素并不重要,所以我们可以省略它们。
href
值看起来也不是唯一的,所以我更喜欢使用可以更独特的 data-sport
属性。
为了给出更准确的答案,我需要使用开发工具查看该网页。
这个 xpath 应该也能正常工作
.//div[@class='class_1' and @id='1234567']//following-sibling::a[@data-sport='soccer']
我需要帮助找到一个确切的元素,然后根据特定的 id 号用 following-sibling 单击它,然后 classes 和一个(href 或 class)。 这是简化的代码,下面的例子多次出现只是不同的 id:
<div class="class_1" id="1234567">
<div class="class_2">
<div class="class_3">
<div class="class_3.1">
<div class="class_3.2">
<div class="class_3.3">
<div class="class_3.3.1">
<div class="class_3.3.1.1">
<div class="class_3.3.1.2">
<div class="class_3.3.1.3">
<a href="javascript:void(0)" class="event-media-icon live-icon icon-white" data-sport="soccer"></a>
...
我如何找到一个带有 id 和 class 的元素,例如像这样的东西并点击它:
driver.find_element(By.XPATH, 'class=class_1 and id="2222222" and class="event-media-icon live-icon icon-white').click()
您正在寻找的 xpath
将如下所示:
//div[@class='class_1' and(@id='1234567')]//a[@data-sport='soccer']
我猜上面 div
和目标 a
之间的元素并不重要,所以我们可以省略它们。
href
值看起来也不是唯一的,所以我更喜欢使用可以更独特的 data-sport
属性。
为了给出更准确的答案,我需要使用开发工具查看该网页。
这个 xpath 应该也能正常工作
.//div[@class='class_1' and @id='1234567']//following-sibling::a[@data-sport='soccer']