VB/VB.Net WebRequest

Inscrit
21 Février 2012
Messages
81
Reactions
5
#1
Salut à tous j'ai un petite problème au niveau d'un requête HTTP pour une connexion voici ma requête :

Code:
 WebBrowser1.Document.GetElementById("login_player").SetAttribute("value", TextBox1.Text)
        WebBrowser1.Document.GetElementById("login_passwd").SetAttribute("value", TextBox2.Text)
        Dim allelements As HtmlElementCollection = WebBrowser1.Document.All

        For Each webpageelement As HtmlElement In allelements

            If webpageelement.GetAttribute("value") = "LOGIN" Then

                webpageelement.InvokeMember("click")

            End If

        Next
Enfaite sa ne veux pas cliquer sur le bouton login voici le site : http://kingsage.fr/

Donc si vous pouviez m'aider merci.
Cordialement mrfrag
 
A

Anonymous

Invité
#2
C'est normal dans le "value" de ce submit il n'y a pas de "LOGIN" c'est ""

Il va falloir que tu compte le nombre d'input jusqu'a celui ci pour tous les parcourir jusqu'au nombre que tu as trouvé et là tu fais InvokeMember("click")
 
A

Anonymous

Invité
#3
Ce n'est pas du HTTP web request que tu fais la raphael, mais du "webbrowser".

Le HTTP web request est complétement diffèrent et plus dur aussi mais plus efficace.
Sinon Munkellz a donné la réponse.
 
Inscrit
21 Février 2012
Messages
81
Reactions
5
#4
Ah ba chez pas on m'avez dit que c’était une web request ... mais merci de vos réponse :)
 
Inscrit
21 Février 2012
Messages
81
Reactions
5
#5
Es que ta un bout de code ? :D ji arrive pas ...
 
Inscrit
21 Février 2012
Messages
81
Reactions
5
#6
Résolue voici le code :

Code:
        WebBrowser1.Document.GetElementById("login_player").SetAttribute("value", TextBox1.Text)
        WebBrowser1.Document.GetElementById("login_passwd").SetAttribute("value", TextBox2.Text)
        Dim allelements As HtmlElementCollection = WebBrowser1.Document.All

        For Each webpageelement As HtmlElement In allelements

            If webpageelement.GetAttribute("type") = "submit" Then

                webpageelement.InvokeMember("click")

            End If

        Next
 
Inscrit
9 Octobre 2012
Messages
27
Reactions
0
#7
J'aimerais savoir si pour parvenir a ceci je dois impérativement ajouté une WebBrowser dans ma form ou dois-je simplement ajouté une variable de type WebBrowser ? Merci de votre réponce ;)
 

Geraff

Administrateur
Membre du personnel
Inscrit
13 Mars 2008
Messages
564
Reactions
0
#8
Je pense que si tu instancies un objet de type webbrowser cela devrait marcher.

Mais là à part faire le test toi même (ça prend 1 minute) je ne vois pas trop ce que tu veux de plus ^^.
 
Inscrit
9 Octobre 2012
Messages
27
Reactions
0
#9
Merci @Gerarff ;)
Je test et je te dis quoi ;)
 
Inscrit
9 Octobre 2012
Messages
27
Reactions
0
#10
J'ai tester en instancians un objet de type webbrowser mais sa ne marche pas ..
<spoiler>

Dim s As New WebBrowser
Dim z As New WebBrowser

Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click


s.Navigate("http://translate.google.fr/#fr/en/f")
If TextBox3.Text <> "" Then


z.Document.GetElementById("source").SetAttribute("value", TextBox3.Text)

End If

End Sub
End Class
</spoiler>
 

Geraff

Administrateur
Membre du personnel
Inscrit
13 Mars 2008
Messages
564
Reactions
0
#11
Alors il s'avère que c'est un élément graphique ^^.
Utilise des webrequest ce sera mieux.
 
Inscrit
9 Octobre 2012
Messages
27
Reactions
0
#12
En faite je voulais utiliser cette requete pour traduire un texte mais on ne peut pas interargir directement avec un webbrowser alors comment faire? Merci de ta réponce :)
 

ToOnS

Membre Actif
Inscrit
8 Avril 2009
Messages
974
Reactions
0
#13
Salut , normal tu as 2 webbrowsers , tu charges le 1er (s) avec l'adresse et tu cherches un element dans le 2ieme (z qui est vide)
 
Inscrit
9 Octobre 2012
Messages
27
Reactions
0
#14
Je comprend pas .. Tu peut détailler un peu stp..?
 

ToOnS

Membre Actif
Inscrit
8 Avril 2009
Messages
974
Reactions
0
#15
tu charges le 1er browser avec ca : s.Navigate("http://translate.google.fr/#fr/en/f")
donc c'est dans s que y'a des elements
mais tu cherches les elements dans z :
z.Document.GetElementById("xxxxxxxxxxxxx...

aussi dans le cas de Google tu peux directement faire ca pour lancer la traduction (bon apres faudra quand meme recuperer la traduction dans l'element cible , j'ai pas cherché son nom) :
Dim baseUri As New Uri("http://translate.google.fr")
dim url = "#fr/en/" & textboxatraduire.text
Dim myUri = New Uri(baseUri, url)
Dim WebBrowser1 As New WebBrowser
WebBrowser1.Url = myUri
Do Until WebBrowser1.ReadyState = WebBrowserReadyState.Complete
Application.DoEvents()
Loop
' recuperer la traduction dans l'element "cible" de WebBrowser1

et y'a encore mieu , l'api de Google translate qui est faite pour ca : http://www.webantoine.com/informatique/ ... slate.html
 

Geraff

Administrateur
Membre du personnel
Inscrit
13 Mars 2008
Messages
564
Reactions
0
#16
En effet j'étais passé à coté de ça.
 
Inscrit
9 Octobre 2012
Messages
27
Reactions
0
#17
Merci je vais essayer de comprendre le code (car je suis débutant et mon temps d'analyse est plutot long mais merci beaucoup ;) )
 
Inscrit
9 Octobre 2012
Messages
27
Reactions
0
#18
New uri signifie la déclaration d'une variable contenant forcément un URL ?

Coordialement Wordeur ;)
 

BlueDream

Administrateur
Membre du personnel
Inscrit
8 Decembre 2012
Messages
2 010
Reactions
149
#19
Non pas forcement, cela peut être un fichier de ton ordinateur. .txt .xml swf yml html ect
 
Haut Bas