Page 1 sur 1

Récupération, après l'envoi d'une URL, du "buffer html"

MessagePublié: 29 Jan 2008 à 09:44
par Michael DELIQUE
Une solution de jeulin

Code : Tout sélectionner
 Dim objetHttp As Variant
Dim response As String
Dim urlcible As String

' Instantiation de l'objet XMLHTTP ; l'objet est bien décrit sur l'Internet.
Set objetHttp=Nothing
Set objetHttp = CreateObject("Microsoft.XMLHTTP")

urlcible = "http://..."

' Définition de la requête
Call objetHttp.open ("GET", urlcible, False)
' Envoi de la requête
Call objetHttp.send ()
'Retour "html" de la requête
response = objetHttp.responseText



La récupération d'un buffer sécurisé (de façon basique) est très simple :


Code : Tout sélectionner
Dim objetHttp As Variant
Dim response As String
Dim urlcible, nomutilisateur, motdepasse As String

' Instantiation de l'objet XMLHTTP ; l'objet est bien décrit sur l'Internet.
Set objetHttp=Nothing
Set objetHttp = CreateObject("Microsoft.XMLHTTP")

urlcible = "http://..."

' Définition de la requête
Call objetHttp.open ("GET", urlcible, False, nomutilisateur, motdepasse)
' Envoi de la requête
Call objetHttp.send ()
'Retour "html" de la requête
response = objetHttp.responseText


Après une simple page "html", un fichier non protégé à télécharger :

Code : Tout sélectionner
Declare Function URLDownloadToFile Lib "urlmon" Alias "URLDownloadToFileA" (Byval pCaller As Long, Byval szURL As String, Byval szFileName As String, Byval dwReserved As Long, Byval lpfnCB As Long) As Long

Declare Function DeleteUrlCacheEntry Lib "wininet" Alias "DeleteUrlCacheEntryA" (Byval lpszUrlName As String) As Long

Dim urlcible, nomdufichier As String
' urlcible : le "nom" du fichier sous sa forme d"URL, nomdufichier : le "nom complet" du fichier sur un espace disque

returnValue = URLDownloadToFile(0, urlcible, nomdufichier, 0, 0)
' Ménage dans le "cache"
returnValue = DeleteUrlCacheEntry(urlcible)



Il y a peut-être plus efficace mais je ne connais pas...