【问题标题】:VBA code to click on each View Contact tabs using selenium VBA使用 selenium VBA 单击每个查看联系人选项卡的 VBA 代码
【发布时间】:2017-12-19 07:20:50
【问题描述】:

在网页中有 10 个具有相同名称的查看联系人选项卡(查看联系人)。我正在尝试使用 selenium VBA 单击每个查看联系人选项卡,但我只能使用下面的 Selenium VBA 代码单击第一个查看联系人但 Internet资源管理器代码工作正常,但我想使用 selenium v​​ba 代码单击每个选项卡。

我的 Selenium VBA 代码:-

Dim ele As WebElement
For Each ele In driver.FindElementsByXPath("//input[@value='View Contact']")
ele.Click
Next

我的 Internet Explorer 代码:-

With ie.document
Set elems = .getElementsByTagName("input")
For Each e In elems
       If (e.getAttribute("value") = "View Contact") Then
           e.Click
           'Exit For
       End If
    Next e
End With

我的 Html 代码:-所有 10 个选项卡都具有相同的 html 代码

<input type="button" class="boxOpener btn blue b" style="width: 150px;font-size: 14px;" value="View Contact">

【问题讨论】:

  • 可以提供html吗?当您单击联系人选项卡时,页面会发生什么?

标签: vba selenium firefox


【解决方案1】:

要点击每个 View ContactSelenium,您可以使用以下代码块:

Dim ele As WebElement
For Each ele In driver.FindElementsByXPath("//input[@class='boxOpener btn blue b' and @value='View Contact']")
    ele.Click
Next ele

【讨论】:

  • 感谢您的回复。使用此代码我只能单击一个选项卡,但我想单击所有 10 个选项卡
  • View Contact 页面是在同一个TAB/Window 中打开还是在单独的TAB/Window 中打开?
  • 相同的选项卡/窗口
【解决方案2】:

你有没有这样尝试过:

Dim elem as Object
For Each elem In IE.document.getElementsByTagName("input")
    If InStr(elem.Value, "View Contact") > 0 Then elem.Click: Exit For
Next elem

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-06-07
    • 1970-01-01
    • 2016-06-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多