LinkBack Thread Tools Search this Thread Display Modes
Prev Previous Post   Next Post Next
  #1   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 12
Default parsing Html page

Hi.
I need to get data from a web page from Excel (no query web).

I need to put in a variable (es. mycode) all the html code, afterwards I
will parse the string "mycode".

I call in my sub a function DownloadPage (API) found in KPD-Team 1999 (see
code below).
It works but sometime the page processed is not completly loaded, so I lost
some data.

I am not expert, so I ask if there is the possibility to put in a string the
html code with another method.

Thanks
M.

-------------------------------------------

Option Explicit

Const INTERNET_OPEN_TYPE_DIRECT = 1
Const INTERNET_OPEN_TYPE_PROXY = 3
Const INTERNET_FLAG_RELOAD = &H80000000
Private Declare Function InternetOpen Lib "wininet" Alias "InternetOpenA"
(ByVal sAgent As String, ByVal lAccessType As Long, ByVal sProxyName As
String, ByVal sProxyBypass As String, ByVal lFlags As Long) As Long
Private Declare Function InternetCloseHandle Lib "wininet" (ByVal hInet As
Long) As Integer
Private Declare Function InternetReadFile Lib "wininet" (ByVal hFile As
Long, ByVal sBuffer As String, ByVal lNumBytesToRead As Long,
lNumberOfBytesRead As Long) As Integer
Private Declare Function InternetOpenUrl Lib "wininet" Alias
"InternetOpenUrlA" (ByVal hInternetSession As Long, ByVal lpszUrl As String,
ByVal lpszHeaders As String, ByVal dwHeadersLength As Long, ByVal dwFlags As
Long, ByVal dwContext As Long) As Long

Private Declare Function InternetAttemptConnect Lib "wininet" (ByVal
dwReserved As Long) As Long



Function DownloadPage(sURL As String, Optional Length As Long) As String
'this sub written by
'KPD-Team 1999
'URL: http://www.allapi.net/
'E-Mail:

Dim hOpen As Long, hFile As Long, sBuffer As String, Ret As Long
'Create a buffer for the file we're going to download

If Length = 0 Then Length = 10000000

sBuffer = Space(Length)
'Create an internet connection
hOpen = InternetOpen("", INTERNET_OPEN_TYPE_DIRECT, vbNullString,
vbNullString, 0)
'Open the url
hFile = InternetOpenUrl(hOpen, sURL, "", 0, INTERNET_FLAG_RELOAD, ByVal
0&)
'Read the first 10000 bytes of the file
InternetReadFile hFile, sBuffer, Length, Ret
'clean up
InternetCloseHandle hFile
InternetCloseHandle hOpen
'Show our file
DownloadPage = Left$(sBuffer, Ret)

End Function




 
Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes

Posting Rules

Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are On


Similar Threads
Thread Thread Starter Forum Replies Last Post
Tweaking to pull a local HTML page instead of a server page? JP[_4_] Excel Programming 0 February 20th 08 03:17 PM
Excel & HTML Parsing Porphyria Excel Discussion (Misc queries) 4 June 24th 06 12:18 AM
HTML parsing with VBA [email protected][_2_] Excel Programming 3 April 17th 06 09:58 PM
parsing HTML table into excel. How? Dan[_38_] Excel Programming 6 July 11th 04 10:19 AM
Parsing Data From HTML Source into Excel using VBA Peter Dickson Excel Programming 1 July 9th 03 11:00 PM


All times are GMT +1. The time now is 08:01 PM.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Copyright ©2004-2024 ExcelBanter.
The comments are property of their posters.
 

About Us

"It's about Microsoft Excel"