Home |
Search |
Today's Posts |
#1
Posted to microsoft.public.excel.programming
|
|||
|
|||
Capture request/response HTTP headers with VBA
hi
was wondering if anyone knows how to do this. there is some code in VB5 that supposedly gets this information, but it wont work with VBA http://www.planet-source-code.com/vb...p%2FC117001102 all i need is the code that logs the GET information. thanks |
#2
Posted to microsoft.public.excel.programming
|
|||
|
|||
Capture request/response HTTP headers with VBA
Look for xmlhttp - plenty of code examples online.
Function GetHeader(sURL As String) As String Dim oXHTTP As Object Set oXHTTP = CreateObject("MSXML2.XMLHTTP") oXHTTP.Open "HEAD", sURL, False oXHTTP.send GetHeader = oXHTTP.getAllResponseHeaders() End Function -- Tim Williams Palo Alto, CA "p3plyr" wrote in message ... hi was wondering if anyone knows how to do this. there is some code in VB5 that supposedly gets this information, but it wont work with VBA http://www.planet-source-code.com/vb...p%2FC117001102 all i need is the code that logs the GET information. thanks |
#3
Posted to microsoft.public.excel.programming
|
|||
|
|||
Capture request/response HTTP headers with VBA
Depending on what you want to retrieve, amend this:
'Need a referenece to "Microsoft WinHTTP Services" Private Sub CommandButton1_Click() Dim HTTPobj As WinHttp.WinHttpRequest Const WHICHURL As String = "http://www.Google.co.uk" Set HTTPobj = New WinHttp.WinHttpRequest With HTTPobj .Open "GET", WHICHURL .Send MsgBox .ResponseText End With End Sub NickHK "p3plyr" wrote in message ... hi was wondering if anyone knows how to do this. there is some code in VB5 that supposedly gets this information, but it wont work with VBA http://www.planet-source-code.com/vb...p%2FC117001102 all i need is the code that logs the GET information. thanks |
#4
Posted to microsoft.public.excel.programming
|
|||
|
|||
Capture request/response HTTP headers with VBA
Tim, thanks for taking the time to reply. i really appreciate it!
my vb skills are somewhat limited. can you give me an example of how i can call on that function you posted so that it will return the data such as i just posted in the reply to Nick above? thanks again "Tim Williams" wrote: Look for xmlhttp - plenty of code examples online. Function GetHeader(sURL As String) As String Dim oXHTTP As Object Set oXHTTP = CreateObject("MSXML2.XMLHTTP") oXHTTP.Open "HEAD", sURL, False oXHTTP.send GetHeader = oXHTTP.getAllResponseHeaders() End Function -- Tim Williams Palo Alto, CA "p3plyr" wrote in message ... hi was wondering if anyone knows how to do this. there is some code in VB5 that supposedly gets this information, but it wont work with VBA http://www.planet-source-code.com/vb...p%2FC117001102 all i need is the code that logs the GET information. thanks |
#5
Posted to microsoft.public.excel.programming
|
|||
|
|||
Capture request/response HTTP headers with VBA
dim c as range
for each c in thisworkbook.sheets("Sheet1").range("A2:A50") if c.value<"" then c.offset(0,1).value=GetHeader(c.value) next c Assuming A2:A50 is a range containing URL's. -- Tim Williams Palo Alto, CA "p3plyr" wrote in message ... Tim, thanks for taking the time to reply. i really appreciate it! my vb skills are somewhat limited. can you give me an example of how i can call on that function you posted so that it will return the data such as i just posted in the reply to Nick above? thanks again "Tim Williams" wrote: Look for xmlhttp - plenty of code examples online. Function GetHeader(sURL As String) As String Dim oXHTTP As Object Set oXHTTP = CreateObject("MSXML2.XMLHTTP") oXHTTP.Open "HEAD", sURL, False oXHTTP.send GetHeader = oXHTTP.getAllResponseHeaders() End Function -- Tim Williams Palo Alto, CA "p3plyr" wrote in message ... hi was wondering if anyone knows how to do this. there is some code in VB5 that supposedly gets this information, but it wont work with VBA http://www.planet-source-code.com/vb...p%2FC117001102 all i need is the code that logs the GET information. thanks |
#6
Posted to microsoft.public.excel.programming
|
|||
|
|||
Capture request/response HTTP headers with VBA
Hi again and thanks again ok, well, you make it look so easy :) i must be doing somethng wrong here. This is what i've got: Code:
Function GetHeader(sURL As String) As String Dim oXHTTP As Object Set oXHTTP = CreateObject("MSXML2.XMLHTTP") oXHTTP.Open "HEAD", sURL, False oXHTTP.send GetHeader = oXHTTP.getAllResponseHeaders() Dim c As Range End Function '---------------------------------------------------------- Sub test() Set ie = CreateObject("InternetExplorer.Application") With ie ..Visible = True ..Navigate "http://my.msn.com" Do Until .ReadyState = 4: DoEvents: Loop Do While ie.busy: DoEvents: Loop End With For Each c In ThisWorkbook.Sheets("Sheet1").Range("A2:A50") If c.Value < "" Then c.Offset(0, 1).Value = GetHeader(c.Value) Next c End Sub basically, and i did not make it that clear, what i am looking for is a routine that will record all the header action, as it occurs during navigation. for example, if i navigate to http://my.msn.com, just typing that one URL in my address bar and hitting enter on my keyboard, i get all this header activity (courtesy of DebugBar 4.2) --------------------------------- GET / HTTP/1.1 Accept: image/gif, image/x-xbitmap, image/jpeg, image/pjpeg, application/vnd.ms-excel, application/vnd.ms-powerpoint, application/msword, application/x-shockwave-flash, */* Referer: http://www.msn.com/ Accept-Language: en-us Accept-Encoding: gzip, deflate User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1) Host: my.msn.com Connection: Keep-Alive Cookie: MC1=V=3&GUID=1b9fd9574b9a4952a6148750072c065c; mh=MSFT; CULTURE=EN-US; ushpsvr=M:5|F:5|T:5|E:5|D:blu|W:F; ushpcli=0|H.0.1|G.0.1|Z.0.1|R.0.1.cap|C.0.1.lg:new yorkny|L.0.1.LN:WNBC; ushpwea=wc:USNY0996; ushppr=H:1:070308 HTTP/1.1 302 Found nnCoection: close Date: Sat, 10 Mar 2007 01:04:29 GMT Server: Microsoft-IIS/6.0 X-Powered-By: ASP.NET P3P:CP="BUS CUR CONo FIN IVDo ONL OUR PHY SAMo TELo" X-AspNet-Version: 1.1.4322 Location: http://login.live.com/login.srf?lc=1...a26ff9ace50a14 Cache-Control: no-cache Pragma: no-cache Expires: -1 Content-Type: text/html; charset=utf-8 Content-Length: 351 GET /login.srf?lc=1033&id=6528&ru=http%3a%2f%2fmy.msn.c om%2f&tw=14400&kv=9&ct=1173488669&cb=SiteID=msft&m sppjph=1&ver=2.1.6000.1&rn=6Tw2AA7i&tpf=9bdebc94d4 76ff79d7a26ff9ace50a14 HTTP/1.1 Accept: image/gif, image/x-xbitmap, image/jpeg, image/pjpeg, application/vnd.ms-excel, application/vnd.ms-powerpoint, application/msword, application/x-shockwave-flash, */* Referer: http://www.msn.com/ Accept-Language: en-us Accept-Encoding: gzip, deflate User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1) Host: login.live.com Connection: Keep-Alive HTTP/1.1 200 OK Cache-Control: no-cache Connection: close Date: Sat, 10 Mar 2007 01:04:30 GMT Pragma: no-cache Transfer-Encoding: chunked Content-Type: text/html; charset=iso-8859-1 Content-Encoding: gzip Expires: Sat, 10 Mar 2007 01:03:30 GMT Vary: Accept-Encoding Server: Microsoft-IIS/6.0 PPServer: PPV: 30 H: BAYPPLOG2B05 V: 0 X-Powered-By: ASP.NET P3P: CP="DSP CUR OTPi IND OTRi ONL FIN" Set-Cookie: MSPRequ=lt=1173488670&co=1&id=6528; path=/;version=1 Set-Cookie: MSPOK=uuid-79e09a36-40d4-4158-a4f1-3e859545e560; domain=login.live.com;path=/;version=1 -------------------------------------------------- so what i am trying to do is have my vba routine navigate to, in this example, my.msn.com, and then some how be picking up all that header detail and either placing it on the spreadsheet or sending it to a tet file for future analysis. so conceivably the code would look something like this: Code:
Function GetHeader(sURL As String) As String Dim oXHTTP As Object Set oXHTTP = CreateObject("MSXML2.XMLHTTP") oXHTTP.Open "HEAD", sURL, False oXHTTP.send GetHeader = oXHTTP.getAllResponseHeaders() Dim c As Range End Function '---------------------------------------------------------- Sub test() 'begin recording all headers and write to spreadsheeet or text file Set ie = CreateObject("InternetExplorer.Application") With ie ..Visible = True ..Navigate "http://my.msn.com" Do Until .ReadyState = 4: DoEvents: Loop Do While ie.busy: DoEvents: Loop End With ' stop recording of headers End Sub finally can get to the text string i need. thanks again |
#7
Posted to microsoft.public.excel.programming
|
|||
|
|||
Capture request/response HTTP headers with VBA
If I tell you what's keeping you from attempting a denial of service
attack ? Or sending lots of spam from hotmail.com? |
Reply |
Thread Tools | Search this Thread |
Display Modes | |
|
|
Similar Threads | ||||
Thread | Forum | |||
How do I transform a word response to a numeric response? | Excel Discussion (Misc queries) | |||
How do I set up a daily call out response response register? | Excel Worksheet Functions | |||
start http://..... vs hyperlink http://..... | Excel Discussion (Misc queries) | |||
Importing XML data from http request | Excel Discussion (Misc queries) |