(硒)如何单击具有相同类但仅具有动态href的多个按钮?

时间:2020-08-02 07:59:12

标签: python-3.x selenium selenium-webdriver

我需要单击所有这些按钮,而硒需要确定页面上有多少这些按钮。

<a style="margin-left: 10px;" href="/home/edit?Pproduct=d08983fca254&amp; source=my-products” class="rlg-btn-secondary xh-
highlight” >Edit</a>

<a style="margin-left: 10px;" href="/home/edit?product=3191d95e8233&amp; source=my-products” class="rlg-btn-secondary” >Edit</a>

2 个答案:

答案 0 :(得分:0)

假设所有链接的文字均为编辑(如给定的片段所示)。您可以首先获取具有相同属性的所有元素的列表,然后通过逐个导航它们来执行所需的任何操作。

# To get list of all links with text Edit
buttonsList = driver.find_elements_by_xpath("//a[text()='Edit']")
# Traverse to each element in list
for bth in buttonsList:
    btn.click()  # or perform action, whatever you want here.

答案 1 :(得分:0)

You can use findelements by list class in selenium.

List<WebElement> editbuttons = driver.findElements(By.xpath("//*a[contains(text(),"Edit")]));

// To get number of edit buttons

Int count=editbuttons.size();

//如果需要第一个按钮 editbuttons.get(0).click();

///所有编辑按钮都作为列表存储在硒中