Récupérer le code source d'une page web https...(dhtml, javascripts..) en vba???
pegase71
Messages postés14Date d'inscriptionmardi 17 mai 2005StatutMembreDernière intervention21 octobre 2006
-
5 déc. 2005 à 14:50
pegase71
Messages postés14Date d'inscriptionmardi 17 mai 2005StatutMembreDernière intervention21 octobre 2006
-
12 déc. 2005 à 17:26
Bonjour,
J'essaie de récupérer le code source (avec dhtml, javascript...) d'une page web de mon compte en https..pour récupérer les tables de mon compte...mais je n'ai qu'un cadre (le premier cadre de la page)...
J'ai cette macro en vba : (qui fonctionne bien sur d'autres pages)
IE.navigate "https://www.monCompte.htm"
Do Until IE.readyState = READYSTATE_COMPLETE
DoEvents
Loop
nFile = FreeFile
'Print #nFile, IE.document.documentElement.innerHTML
Open "C:\Compte.htm" For Output Shared As #nFile
Print #nFile, IE.document.documentElement.innerHTML
Close #nFile
Y'a t-il un moyen de récupérer en vba le code source de la page complète...et non seulement le premier cadre (ou couche?)?
Merci de votre aide
zoo_h
Messages postés1Date d'inscriptionjeudi 8 février 2001StatutMembreDernière intervention12 décembre 2005 12 déc. 2005 à 16:06
Bonjour,
Pour récupérer les sources des pages contenues dans la frame (cadre) et non la frame elle-même, il suffit a priori de modifier ton :
IE.navigate "https://www.monCompte.com"
par
IE.navigate "https://www.monCompte.com/la_page_souhaitee.htm"
Il faut le faire pour toutes les pages contenues dans la frame pour récupérer l'intégralité !
pegase71
Messages postés14Date d'inscriptionmardi 17 mai 2005StatutMembreDernière intervention21 octobre 2006 12 déc. 2005 à 17:26
Merci zoo_h pour ta réponse...je vais tester avec IE.Navigate
J'ai trouvé sur un forum anglophone une bonne partie de la solution...pour les frames.
Avec cette macro je peux lister les frames (qui représente des url en https.. et choisir ainsi celui que je veux avec IE.navigate ("https://www.MonsiteWeb.htm")
Dim frm As Object , i As Integer
Set frm = IE.document.frames
For i = 0 To frm.Length - 1
Range("A" & (i + 1)).Value = frm(i).Location
Next