什么VBA代码允许我发送POST请求(在asp搜索框中),然后在<span id="xxx"></span>标签之间检索数据?(在结果页面中)
我有以下代码模拟页面中的搜索请求:
Dim Site As Object
Set Site = CreateObject("InternetExplorer.application")
Dim QNUMBER As String
Dim URL As String
URL = "apps/inventory/Default.aspx" 'local website
QNUMBER = textBox_Scan.Text
Site.navigate URL
While Site.busy
Wend
Dim oHTMLDoc As Object
Set oHTMLDoc = Site.document
oHTMLDoc.getElementById("input_search").Value = QNUMBER
oHTMLDoc.getElementById("btn_search").Click
Run Code Online (Sandbox Code Playgroud)
这样做并不觉得"干净",我觉得发送POST请求会更合适.
谢谢.
[编辑]
这是表单代码
<form name="aspnetForm" method="post" action="Default.aspx" id="aspnetForm">
Run Code Online (Sandbox Code Playgroud)
输入文本ID
id="input_search"
Run Code Online (Sandbox Code Playgroud)
提交按钮代码
id="btn_search"
Run Code Online (Sandbox Code Playgroud)
我想从<span id="warranty">36 month</span>和获取数据<span id="budget">500$</span>
Sub macroPOST()
Set objHTTP = CreateObject("MSXML2.ServerXMLHTTP")
URL = "[Your URL]"
objHTTP.Open "POST", URL, False
objHTTP.setRequestHeader "Content-Type", "application/x-www-form-urlencoded"
objHTTP.Send ("id=dddaaa&pwd=1234[Your request parameters]")
replyTXT = objHTTP.responseText
If objHTTP.Status = "200" Then 'success
MsgBox replyTXT
Else
'Do something
End If
End Sub
Run Code Online (Sandbox Code Playgroud)
它适用于我的Excel,感谢您仔细阅读.