单击“网页”选项卡(如果可见)

Click on Webpage tab if it is visible

提问人:TCritical 提问时间:7/20/2023 最后编辑:PᴇʜTCritical 更新时间:7/20/2023 访问量:33

问:

我一直在尝试使用代码单击网页中的选项卡

Set P = D.FindElementByCss("a[href='#pro-content-pro']")
    P.Click

如果选项卡在网页中可见,则适用于上述代码,如果它不可见,则不起作用。以下是 HTML 代码

可见时

<li data-bind="attr:{ 'id': id }, click: onClick, visible: isVisible, css: {'active': isActive, 'disabled-control': !isEnabled() }" class="active">
                <a data-toggle="tab" role="tab" data-bind="attr:{ href: '#' + sectionId, id: linkId }, css: { 'disabled': !isEnabled() }" href="#pro-content-pro">
                    <span data-bind="text: title">Proforma</span>
                </a>
            </li>

不可见时

<li data-bind="attr:{ 'id': id }, click: onClick, visible: isVisible, css: {'active': isActive, 'disabled-control': !isEnabled() }" class="disabled-control">
                <a data-toggle="tab" role="tab" data-bind="attr:{ href: '#' + sectionId, id: linkId }, css: { 'disabled': !isEnabled() }" href="#pro-content-pro" class="disabled">
                    <span data-bind="text: title">Proforma</span>
                </a>
            </li>

如果选项卡不可见,请向我建议正确的代码,然后跳过,否则单击选项卡(如果可见)。

多谢。

html excel VBA 网页抓取

评论


答:

2赞 Black cat 7/20/2023 #1

如果您使用 Selenium,请尝试一下

Set P = D.FindElementByCss("a[href='#pro-content-pro']")
    If P.Attribute("class")="disabled" Then
    Else    
        P.Click
    End If