se logger dans un portail avec VBScript
Bonjour à tous,
j'essaie de me logger dans un site web afin d'y télécharger mes factures...si c'est possible, j'ai évidemment les accès appelé USER et PASS.
il faut je pense d'abord faire un POST pour entrer dans le compte et faire un GET pour y télécharger la facture.
la "form", formulaire en ligne se présente comme telle:
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
| <form name="loginForm" action="/openid/login.do" method="post" class="login-form"
onsubmit="return validate();">
<label for="j_username_input">Numéro mobile</label>
<div class="form-group">
<input class="form-control" type="text" inputmode="numeric" name="j_username" id="j_username_input"
autofocus onkeyup="validateMobileNumber(this.name);"
onblur="validateMobileNumber(this.name, true);"
>
</div>
<div class="errors" id="j_username_error"></div>
<label for="j_password_input">Mot de passe</label>
<div class="form-group">
<input class="form-control password-input" type="password" name="j_password"
id="j_password_input" placeholder="" onkeyup="showEyeIcon();">
<div class="hide-show" style="display: none;" id="passwordEye"
onclick="togglePassword();"></div>
</div>
<div class="errors" id="j_password_error"></div>
<a href="/openid/requestpassword" id="requestPasswordLink" class="link link-login"
onmousedown="event.preventDefault();">Mot de passe oublié*?</a>
<div class="form-group">
<button type="submit" class="Button Button--primary login" name="Login.Submit"
id="login_button">Se connecter</button>
</div>
<input type="hidden" name="rememberme" id="rememberme" value="true"/>
</form> |
après avoir cherché, voici mon code vb:
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
| mainUrl = "https://login.prd.TEST.be/openid/login"
myuser = "USER"
mypass = "PASS"
fileUrl = "https://api.prd.TEST.be/ocapi/public/api/billing-service/v2/accounts/100992022/bills/224801077164"
strAuthenticate = "j_username" & myuser & "&j_password=" & mypass
Set WHTTP = CreateObject("Msxml2.XMLHttp.6.0")
With WHTTP
.Open "POST", mainUrl, False
.setRequestHeader "Content-Type", "application/x-www-form-urlencoded"
.Send strAuthenticate
MsgBox .responseText
MsgBox .status
End With |
je ne pense pas que cela marche jusqu'ici, je ne sais pas comment vérifier si je suis bien logger.
Néanmoins, il renvoie un status de 200
je sais télécharger des documents PDF directement à partir du net par ce code:
Code:
1 2 3 4 5 6 7 8
| If WHTTP.Status = 200 Then
Set oStream = CreateObject("ADODB.Stream")
oStream.Open
oStream.Type = 1
oStream.Write WHTTP.responseBody
oStream.SaveToFile "C:\file.pdf", 2 ' 1 = no overwrite, 2 = overwrite
oStream.Close
End If |
merci d'avance, :D:D:D
Xzave