使用Excel VBA代码发送POST和检索数据
什么VBA代码将允许我发送POST请求(在aspsearch框中),然后检索<span id="xxx"></span>
标签之间的数据? (在结果页面中)
我有以下代码模拟页面中的search请求:
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
这样做并不“干净”,我觉得发送POST请求会更合适。
谢谢。
[编辑]
这是表单代码
<form name="aspnetForm" method="post" action="Default.aspx" id="aspnetForm">
input文本ID
id="input_search"
提交button代码
id="btn_search"
我想从<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
它在我的Excel上工作,谢谢你仔细阅读。