html - VBA Web 表单自动填充未完成“必需”标准
问题描述
我正在尝试根据从 interwebz 中提取的一些 VBA 代码填写 Web 表单 - 但是当 VBA 填写文本字段并单击提交时 - 它无法将文本字段识别为已完成 - 显示“必填*”
我要填写的网络表格是https://www.retailmenot.com/everyday/unsubscribe 我在这方面还很陌生,因此感谢您的帮助!
Sub RetailMeNot()
'RetailMeNot.com
Dim HTMLDoc As HTMLDocument
Dim oBrowser As InternetExplorer
Dim oHTML_Element As IHTMLElement
Dim sURL As String
Dim Name, Address, Apt, City, State, Zip, Email As String
Name = "Test"
Address = "123 Apple St"
Apt = ""
City = "New York"
State = "NY"
Zip = "123456"
Email = "Test@VBA.com"
'On Error GoTo Err_Clear
sURL = "https://www.retailmenot.com/everyday/unsubscribe"
Set oBrowser = New InternetExplorer
oBrowser.Silent = True
'oBrowser.timeout = 60
oBrowser.navigate sURL
oBrowser.Visible = True
Do
' Wait till the Browser is loaded
Loop Until oBrowser.readyState = READYSTATE_COMPLETE
Set HTMLDoc = oBrowser.document
HTMLDoc.getElementsByClassName("nameinputfield")(0).Value = Name
HTMLDoc.getElementsByClassName("address2inputfield").Item(0).Value = Address
HTMLDoc.getElementsByClassName("aptnuminputfield").Item(0).Value = Apt
HTMLDoc.getElementsByClassName("cityinputfield").Item(0).Value = City
HTMLDoc.getElementsByClassName("stateinputfield").Item(0).Value = State
HTMLDoc.getElementsByClassName("zipinputfield").Item(0).Value = Zip
HTMLDoc.getElementsByClassName("emailinputfield").Item(0).Value = Email
HTMLDoc.getElementsByClassName("input-checkbox").Item(0).Checked = True
HTMLDoc.getElementsByClassName("button-primary").Item(0).Click
Exit Sub
Err_Clear:
If Err <> 0 Then
Debug.Assert Err = 0
Err.Clear
Resume Next
End If
End Sub
解决方案
推荐阅读
- sql - 如何做一个 SQL 查询来计算出现在带有连接和分组依据的字符串列中的单词?
- r - R中的概率密度函数
- c# - AuthorizationHandler 的 HeaderHandler :没有指定 authenticationScheme,也没有找到 DefaultChallengeScheme
- flutter - 方法 '' 在 null 上被调用
- python - Python插入排序算法无法正确排列文件中的浮点数
- django - django 在过期日期前三个月通知用户
- express - 错误:WHERE 参数“id”具有无效的“未定义”值
- git - 当我输入“git branch -a”时,它显示红色以前删除的分支。这是正常的吗?
- reactjs - 当我通过 reactJS 中的链接传递数据时,页面未在刷新时加载
- javascript - Loops 中的“break”命令