Récupérer le code Html dans une variable texte ?

thethor Messages postés 7 Date d'inscription vendredi 10 novembre 2000 Statut Membre Dernière intervention 12 mars 2005 - 6 mars 2005 à 20:20
thethor Messages postés 7 Date d'inscription vendredi 10 novembre 2000 Statut Membre Dernière intervention 12 mars 2005 - 10 mars 2005 à 21:40
bonjour,

Je cherche à récupérer le code html d'une pa ge web dans une variable texte pour pouvoir l'exploiter ensuite.
voici mon code l'erreur apparait à la dernière ligne ????

Sub RecupHtml()


'code pour récupérer le code Html d'un page web dans une variable texte
Dim CodeHtml As String
Dim i As Integer
Dim IE As InternetExplorer
Dim PageHtml As HTMLDocument
Dim Helem As IHTMLElementCollection


Set IE = CreateObject("InternetExplorer.Application")
IE.Visible = True 'rend la page visible


IE.navigate "http://fr.search.yahoo.com"
Do Until IE.readyState = READYSTATE_COMPLETE
DoEvents
Loop 'attend la fin du chargement

'recupere le code html de la page dans codehtml
Set PageHtml = IE.document
CodeHtml = PageHtml.scripts


End Sub

4 réponses

voilhes Messages postés 33 Date d'inscription lundi 20 janvier 2003 Statut Membre Dernière intervention 6 septembre 2006 6
6 mars 2005 à 23:07
Utiliser un composant Microsoft Internet Transfer que l'on appelera Inet1
Le code HTML est récupéré dans la variable txt

Dim txt As String
Dim b() As Byte

On Error GoTo ErrorHandler


Command1.Enabled = False

' This opens the file specified in the URL text box
b() = Inet1.OpenURL(URL.Text, 1)

txt = ""

For t = 0 To UBound(b) - 1
txt = txt + Chr(b(t))
Next



Exit Sub

ErrorHandler:


MsgBox "The document you requested could not be found.", vbCritical


Exit Sub

-Francis-
0
econs Messages postés 4030 Date d'inscription mardi 13 mai 2003 Statut Membre Dernière intervention 23 décembre 2008 24
7 mars 2005 à 09:25
ou bien comme ceci :





Un contrôle Webbrowser, un contrôle TextBox, un contrôle CommandButton, et voilà :



======================================


Dim docHTML As HTMLDocument 'Référence à charger : Microsoft HTML Object Library





Private Sub Command1_Click()


Set docHTML = WebBrowser1.Document

Text1.Text = docHTML.documentElement.innerHTML


End Sub



Private Sub Form_Load()

WebBrowser1.Navigate2 "
http://fr.search.yahoo.com
" ' Composant à charger : Microsoft Internet Controls

End Sub



========================



Et n'oublie pas de charger le composant et la référence indiqués !!


Manu
-------------------------------------------
Une question bien posée, c'est une chance de réponse bien adaptée.
0
thethor Messages postés 7 Date d'inscription vendredi 10 novembre 2000 Statut Membre Dernière intervention 12 mars 2005
10 mars 2005 à 21:29
merci Manu, je me suis inspiré de ton code . Le problème c'est que le code Html ne correspond pas à la page affichée !? (je l'ai ouverte avec Dreamweaver simultanément !!) Sais-tu d'ou cela peut venir ?

Sub test()
Dim docHTML As HTMLDocument
Dim IE As InternetExplorer
Dim PageHtml As String

Set IE = CreateObject("InternetExplorer.Application")
IE.Visible = True
IE.navigate "http://www.dvdfr.com/search/search.php?multiname=didier&x=8&y=7"
Do Until IE.readyState = READYSTATE_COMPLETE
DoEvents
Loop 'attend la fin du chargement
Set docHTML = IE.document
PageHtml = docHTML.documentElement.innerHTML


End Sub
0
thethor Messages postés 7 Date d'inscription vendredi 10 novembre 2000 Statut Membre Dernière intervention 12 mars 2005
10 mars 2005 à 21:40
Précision......

Je viens de parcourir le code Html de cette page. En fait ce n'est que la fin du code que je récupère ! C'est donc la bonne page (pardon pour l'erreur). Y a-t-il une limite au contenue d'une variable text dans VB6 ?
Comment résoudre se problème ?
0
Rejoignez-nous