如何从网站上单击“提交”按钮

时间:2019-07-07 15:27:01

标签: html vba internet-explorer web-scraping automation

我是VBA的新手,偶然发现了这个问题,我恳求使用vba代码自动单击网站上的“提交”按钮。我已经多次调整了代码,但始终跳过了“ e.click”行。下面是我最近的代码和网站元素的图像。

希望有人可以在这里开灯。

Set tags = objIE.Document.getElementById("alltab").getElementsByTagName("a")
For Each e In tags
    If e.getAttribute("alt") = "Submit a Contract" Then
        e.Click
    End If
next

website's elements

2 个答案:

答案 0 :(得分:1)

您可以简单地为alt属性使用attribute = value选择器。好又快。如果不需要,您不想循环整个集合。另外,在任何循环中,您都想找到我认为的Exit For

objIE.document.querySelector("[alt='Submit a Contract']").click

答案 1 :(得分:0)

请检查您的代码,从屏幕截图中可以看出,超链接(html标记)不在alltab表中。

enter image description here

请尝试按类名查找表并修改代码以添加ID属性:

按ID属性查找表(为第二个表添加ID属性):

Set tags = doc.getElementById("table id").getElementsByTagName("a")

For Each e In tags
    If e.getAttribute("alt") = "Submit a Contract" Then
        e.Click
    End If
Next e

通过类名称查找表:

Set tags = doc.getElementsByClassName("belowDealButtonBox")(0).getElementsByTagName("a")

For Each e In tags
    If e.getAttribute("alt") = "Submit a Contract" Then
        e.Click
    End If
Next e