Problème Code Source de la page
J'ai une page internet, php plus exactement
il faut se connecter etc. . .
Je me connecte : Normalement dans la source de la page il ny a point le mot "login" bien sûr c'est quand je regarde le code source manuellement
Mais j'utilise ceci pour prendre le code source de la page php :( en plus c'est dans le form)
http://www.developpez.net/forums/sho...d.php?t=439377
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56
|
strURL = "monsite.com"
strFile = "C:\emplacement\choisi\monsite.txt"
Const adTypeBinary = 1
Const adSaveCreateOverWrite = 2
Const ForWriting = 2
Dim web, varByteArray, strData, strBuffer, lngCounter, ado
Err.Clear
Set web = Nothing
Set web = CreateObject("WinHttp.WinHttpRequest.5.1")
If web Is Nothing Then Set web = CreateObject("WinHttp.WinHttpRequest")
If web Is Nothing Then Set web = CreateObject("MSXML2.ServerXMLHTTP")
If web Is Nothing Then Set web = CreateObject("Microsoft.XMLHTTP")
web.Open "GET", strURL, False
web.Send
If Err.Number <> 0 Then
SaveWebBinary = False
Set web = Nothing
MsgBox "Une erreur est intervenue."
TagIe = 1
End If
If web.Status <> "200" Then
SaveWebBinary = False
Set web = Nothing
MsgBox "Internet ne peut pas etre joint, démarrez une session IE."
TagIe = 1
End If
If TagIe = 0 Then
varByteArray = web.ResponseBody
Set web = Nothing
'Enregistrer le fichier
On Error Resume Next
Set ado = Nothing
Set ado = CreateObject("ADODB.Stream")
If ado Is Nothing Then
Set fs = CreateObject("Scripting.FileSystemObject")
Set ts = fs.OpenTextFile(strFile, ForWriting, True)
strData = ""
strBuffer = ""
For lngCounter = 0 To UBound(varByteArray)
ts.Write Chr(255 And AscB(MidB(varByteArray, lngCounter + 1, 1)))
Next
ts.Close
Else
ado.Type = adTypeBinary
ado.Open
ado.Write varByteArray
ado.SaveToFile strFile, adSaveCreateOverWrite
ado.Close
End If
SaveWebBinary = True
End If
TagIe = 0 |
E enfaite ceci me télécharge bien le code source mais il n'arrive pas a prendre le code source qui contient "logout", c'est comme si je ne suis pas connecter. . .
Mais si j'ouvre IE, je suis bien connecter et le code source ne contient pas "login"...
Mais sinon normalement IE est ouvert par le code VB et on voit qu'il contient pas le mot login .. si jamais on pourrait directement prendre le code source depuis IE qui est ouvert. . .
j'ai ceci :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25
|
Dim IE As Object
Dim READYSTATE_COMPLETE As Integer
READYSTATE_COMPLETE = 4
'Set IE = New InternetExplorer
Set IE = CreateObject("InternetExplorer.Application")
Sortie = DateAdd("S", 10, Now) 'ajoute de 10 Sc par apport à l'heure systeme
'--------------------------------
IE.Navigate "http://bux.to/logout.php"
'--------------------------------
Do While IE.ReadyState <> READYSTATE_COMPLETE
DoEvents
Loop
IE.Visible = True
If Now >= Sortie Then
IE.Quit: Set IE = Nothing: DoEvents
MsgBox "Problème :d", vbCritical, "Erreur externe"
IE.Quit: Set IE = Nothing: DoEvents
logout_2
End If
'IE.Quit: Set IE = Nothing: DoEvents |
Sur ce : je vois bien que je suis connecter par IE qui visible :)
SI jamais on pourrait directement obtenir le code source de IE . . .
Citation:
Ps: si le code source contient "login" => pas connexion
contient "logout" => connextion
ne contient pas "login" => connexion
ne contient pas "logout" => pas de connexion