Cliquer sur Login automatiquement [Résolu]

Messages postés
5
Date d'inscription
lundi 5 septembre 2016
Dernière intervention
12 septembre 2016
-
Bonjour à tous,
J'ai un WebBrowser qui se connecte automatiquement au site Suivant : https://cis.swatch.com/fr-FR/Account/Login/Swatch

Mon but est qu'une fois que le WebBrowser arrive sur le site il faut qu'il se connecte directement.
J'arrive bien à rentrer un login et un mot de passe mais impossible de le faire cliquer sur le bouton Connexion.
Voici mon code :

Private Sub WebBrowser1_DocumentCompleted(ByVal sender As System.Object, ByVal e As System.Windows.Forms.WebBrowserDocumentCompletedEventArgs) Handles WebBrowser1.DocumentCompleted


Dim theElementCollection As HtmlElementCollection
theElementCollection = WebBrowser1.Document.GetElementsByTagName("input")
For Each curElement As HtmlElement In theElementCollection
Dim controlName As String = curElement.GetAttribute("name").ToString
If controlName = "UserName" Then
curElement.SetAttribute("Value", "Mon Login")
ElseIf controlName = "Password" Then
curElement.SetAttribute("Value", "Mon Password")

End If
Next

theElementCollection = WebBrowser1.Document.GetElementsByTagName("input")
For Each curElement As HtmlElement In theElementCollection
If curElement.GetAttribute("id").Equals("login") Then
curElement.InvokeMember("Click")

End If
Next
End Sub
End Class


Pouvez-vous me dire pourquoi le Login et le mot de passe s'inscrit bien quand j'arrive sur le site mais il ne veut pas se connecter automatiquement.

Merci d'avance pour votre aide.
Afficher la suite 

Votre réponse

5 réponses

Messages postés
18039
Date d'inscription
lundi 7 décembre 2009
Statut
Modérateur
Dernière intervention
11 avril 2018
0
Merci
Bonjour,
Discussion ouverte dans le forum général de VB, que je déplace donc vers le sous-forum VB.Net. Prends s'il te plait dorénavant ce soin.

Pour répondre à ta question : pour des quantités de raisons possibles, parmi lesquelles des astuces du créateur du site pour feinter les robots.
Interroge donc le responsable du site.
Commenter la réponse de ucfoutu
Messages postés
23619
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
16 décembre 2018
0
Merci
Bonjour,

En complément de la réponse d'Ucfoutu (que je salue au passage)
...

Pourquoi passer par les
GetElementsByTagName("input")

Sachant que tu connais les ID de tes éléments... pourquoi ne pas directement utiliser :
WebBrowser1.Document.GetElementById("login") 

vb95
Messages postés
1728
Date d'inscription
samedi 11 janvier 2014
Statut
Contributeur
Dernière intervention
14 décembre 2018
-
un bonjour amical à Jordane45 et Ucfoutu ( deux amis rencontrés à la visite chez CCM en mars 2016)
Commenter la réponse de jordane45
Messages postés
5
Date d'inscription
lundi 5 septembre 2016
Dernière intervention
12 septembre 2016
0
Merci
Salut Jordan,

Je vient d'essayer ta proposition mais rien y fait...
Voici mon code :

For Each curElement As HtmlElement In theElementCollection
WebBrowser1.Document.GetElementById("login")
curElement.InvokeMember("Click")
Commenter la réponse de tmsnake69
Messages postés
3244
Date d'inscription
jeudi 26 novembre 2009
Dernière intervention
13 décembre 2018
Commenter la réponse de cs_ShayW
Messages postés
5
Date d'inscription
lundi 5 septembre 2016
Dernière intervention
12 septembre 2016
0
Merci
Salut cs_ShayW

Je te remercie beaucoup !
Le code fonctionne :)
Voici mon code final pour le bouton login clic

theElementCollection = WebBrowser1.Document.GetElementsByTagName("button")
For Each curElement As HtmlElement In theElementCollection
Dim controlName As String = curElement.GetAttribute("id").ToString
If controlName = "login" Then
curElement.InvokeMember("click")
Commenter la réponse de tmsnake69

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.