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 html : Sélectionner tout - Visualiser dans une fenêtre à part
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:
je ne pense pas que cela marche jusqu'ici, je ne sais pas comment vérifier si je suis bien logger.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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
Néanmoins, il renvoie un status de 200
je sais télécharger des documents PDF directement à partir du net par ce code:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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,
Xzave
Partager