Python Selenium如何单击特定文本旁边的按钮? 报告1 删除 报告2 删除 报告3 删除

Python Selenium如何单击特定文本旁边的按钮? 报告1 删除 报告2 删除 报告3 删除,python,selenium,selenium-webdriver,Python,Selenium,Selenium Webdriver,在上面的代码中,我想单击Delete按钮,问题是每次添加回购时,回购的类名、显示文本的类名以及Delete按钮的类名对于所有回购都是相同的,但回购显示名称除外 我只想单击特定回购名称旁边的删除按钮。 我尝试了//span[text()=“RepoName”],但这只检测repo名称,而不检测其旁边的按钮 我对selenium很陌生,对如何操作感到困惑。如果您想在某个RepoX之后使用button div,请找到span并使用button类获得以下div: <div class = "Rep

在上面的代码中,我想单击Delete按钮,问题是每次添加回购时,回购的类名、显示文本的类名以及Delete按钮的类名对于所有回购都是相同的,但回购显示名称除外

我只想单击特定回购名称旁边的删除按钮。 我尝试了
//span[text()=“RepoName”]
,但这只检测repo名称,而不检测其旁边的按钮


我对selenium很陌生,对如何操作感到困惑。

如果您想在某个RepoX之后使用button div,请找到span并使用button类获得以下div:

<div class = "Repo List">
    <div class = "Repo">
        <div class = "Text">
            <span class = "Display Text">Repo1</span>
        </div>
        <div class = "Button">
            <div class = "Click Button">Delete</div>
        </div>
    </div>

    <div class = "Repo">
        <div class = "Text">
            <span class = "Display Text">Repo2</span>
        </div>
        <div class = "Button">
            <div class = "Click Button">Delete</div>
        </div>
    </div>

    <div class = "Repo">
        <div class = "Text">
            <span class = "Display Text">Repo3</span>
        </div>
        <div class = "Button">
            <div class = "Click Button">Delete</div>
        </div>
    </div>
</div>
如果您不知道类名,但知道它是下一个div:

.xpath("//span[text()='Repo3']/following::div[@class='Button']")
单击“Repo1”文本后的“删除”按钮:


在xpath中使用
'.//span[text()=“'+Name+'”]/following::div[@class=“Button”]
时效果非常好。不用担心,您也可以使用
str.format
'.//span[text()=“{}”]/following::div[@class=“Button”].format
 .xpath("//span[text()='Repo3']/following::div[1]")
driver.find_element_by_xpath("//span[.='Repo1']/following::div[.='Delete'][1]").click()