cs_andrebernard
Messages postés404Date d'inscriptionlundi 9 juin 2003StatutMembreDernière intervention 4 septembre 2013
-
27 avril 2009 à 14:33
cs_andrebernard
Messages postés404Date d'inscriptionlundi 9 juin 2003StatutMembreDernière intervention 4 septembre 2013
-
11 mai 2009 à 15:43
Bonjour à tous
Je voudrais savoir si quelqu'un connait un lien ou une piste pour trouver un code qui permette de donner le nom des elements d'une page internet explorer, sur lequel le focus est placé.
C'est à dire que en faisant des TAB successifs on aurait le nom de chacun des elements ou le focus atterri à la suite de chaque TAB
cs_andrebernard
Messages postés404Date d'inscriptionlundi 9 juin 2003StatutMembreDernière intervention 4 septembre 20131 27 avril 2009 à 19:30
Bonjour RENFIELD, content de te reparler à nouveau
Je sais que tu as beaucoup travaillé sur le pilotage de IE par VB
Je vais essayer de chercher dans la direction que tu m'as donné, en esperant trouver un peu plus que la misere que j'ai trouvé actuellement.
C'est quand meme dingue que depuis le temps que pas mal de gens essaye de piloter IE, il n'y ai toujours pas une DLL ou autre qui soit apparue :-(
cs_andrebernard
Messages postés404Date d'inscriptionlundi 9 juin 2003StatutMembreDernière intervention 4 septembre 20131 28 avril 2009 à 10:26
Le DOM ??? j'en avais un peu entendu parler.
Je viens de faire une recherche et je m'apperçois que ça parle beaucoup de XML et pas trop de page internet :-(
Et puis on peut pas dire non plus que y'a foule d'info sur ce DOM surtout géré par VB6 :-(
cs_andrebernard
Messages postés404Date d'inscriptionlundi 9 juin 2003StatutMembreDernière intervention 4 septembre 20131 28 avril 2009 à 11:52
Tu sais je suis un peu mickey dans l'apprenti sorcier.
J'suis aussi nul que lui, mais par contre j'ai pas les grandes oreilles :-))
En fait mon reve depuis pas mal d'années c'est de pouvoir piloter IE.
Justement ecrire dans les champs
Cliquer sur les boutons
Cliquer sur les liens
Lire la page...
Enfin bref...le piloter quoi
Mais voila....c'est pas simple pour mickey :-(
Je suis arrivé parfois en faisant des essais a ecrire dans certains champs, car ils avaient la propriété "Name" donc j'etais emmerveillé de voir se remplir les champs sans que je tape les caracteres avec mes doigts boudinés. :-)
Mais bien souvent et la ou ça se gate, c'est que les elements n'ont pas de nom :-(
Alors si le bouton est seul je m'en sort avec une pirouette, je fais un submit.
Mais quand y'en a plusieurs.......
Enfin bref, ça fait des années que je reessaye en recuperant des morceaux de codes de droite a gauche et y'a toujours un OS.
J'ai un reel besoin pour mon travail et moi-meme de trouver comment le piloter et je suis desespéré car au fil des années, je n'ai jamais trouvé un site ou quoi que ce soit qui explique pas a pas comment s'y prendre selon la situation.
J'ai meme essayé le javascript, alors la j'ai baigné dans toutes les larmes de mon corp :-((
Parce que selon le cas, si c'est ça, faut faire ci, mais si c'est pas ci faut faire ça...
Aparement aucune page internet n'est faite pareil...et j'y comprend rien, y'a des DIV qui s'emmelle les pinceaux entre elles, et plein de mots que "je comprend meme pas le titre" comme dirait coluche.
Et plus sur les sites de javascript on essaye de m'expliquer et moins je comprend.
Y'a aparement plein de methodes differentes de construire une page, et on ne peut pas etablir une methode une fois pour toute, ça depend du createur de la page (Enfin de ce que j'ai compris)
Voila mon bon RENFIELD, j'avais aussi vu ton super code qui faisait deja pas mal de choses, d'ailleur c'est le seul que j'avais trouvé assez complet et qui m'avait donné enfin l'espoir de pouvoir faire ce que je veux :-)
Et deja le 22/4/2005 je t'avais félicité, et j'avais un probleme avec une saloperie de bouton image :-((
Tu m'avais repondu : tu peux enumerer les images de ta feuille, et tenter de reconaitre le bouton souhaité
En fait pour l'instant, j'essaye de deposer des annonces sur un site, seulement le probleme c'est que selon la rubrique du produit que je veux poser, la page est differente.
Alors au debut je faisais des sendkeys....mais evidement ça a vite foiré car il suffit qu'un champ soit en plus ....
Alors je me suis dit : "Si j'avais le nom de chaque element sur lequel le focus s'arrette, il serait ''facile'' de savoir avec mes sendkeys si j'ecris dans le bon champs ou je clic sur le bon bouton"
Voila......pour ce jour pourquoi en desespoir de cause j'ai posé cette question.
Evidemment, si il y avait une methode pour ecrire ou cliquer a coup sur dans les elements qui n'ont pas de nom, les images etc ... sans passer par les sendkeys......je serais tellement content que je rebondirais sur les murs.
Ce qui est fou c'est que c'est un sujet qui est de plus en plus demandé, car maintenant de plus en plus de programme passent par les navigateurs, au point que dans quelques années les EXE seront de moins en moins utilisés.
Et je ne trouve pas un TUTO ou un site qui explique comment s'y prendre.
En tout cas je te remercie de m'avoir lu, jusque la....ma reponse est aussi longue que mon desespoir, alors tu vois un peu :-)
Par exemple comment ferais tu pour cliquer sur "Mon Ebay" car ça commence tout de suite :-( il a pas de name, juste un ID id="MyEbay"
Bien sur, je pourrais utiliser le lien HREF, mais comme j'aimerais comprendre, si tu pouvais me montrer comment s'y prendre en simulant un click sur ce lien qui n'a pas de nom :-)
Puis sur "Ouvrir une session" car la j'ai un name
name="ssPageName" que je sais meme pas si c'est le bon (J'ai pas l'impression) car c'est un submit ??
Private Sub CcBtnHome_Click()
WebBrowser1.Silent = True
WebBrowser1.navigate MAINURL
End Sub
Private Sub WebBrowser1_DocumentComplete(ByVal pDisp As Object, URL As Variant)
Dim oDoc As HTMLDocument
If URL = MAINURL Then
Set oDoc = WebBrowser1.document
oDoc.getElementById("MyEbay").Click
Do
DoEvents
Loop Until WebBrowser1.readyState = READYSTATE_INTERACTIVE
Do
DoEvents
Loop Until WebBrowser1.readyState = READYSTATE_COMPLETE
Quand a moi, j'ai pondu un gros oeuf comme ça :-)
J'ai été obligé de commenter la boucle IE.readyState = READYSTATE_INTERACTIVE car ça restait coincé dessus, je ne sais pas pourquoi :-(
Private WithEvents IE As InternetExplorer
Private Const MAINURL As String = "
http://www.ebay.fr/ "
Public Sub Form_Load()
Set IE = New InternetExplorer
IE.Silent = True
IE.Visible = True
IE.navigate MAINURL
End Sub
Private Sub IE_DocumentComplete(ByVal pDisp As Object, URL As Variant)
Dim oDoc As HTMLDocument
If URL = MAINURL Then
Set oDoc = IE.document
oDoc.getElementById("MyEbay").Click
' Do
' DoEvents
' Loop Until IE.readyState = READYSTATE_INTERACTIVE
Do
DoEvents
Loop Until IE.readyState = READYSTATE_COMPLETE
Code pour cliquer sur le bouton "Ouvrir une cession"
Do
DoEvents
Loop Until IE.readyState = READYSTATE_COMPLETE
cs_andrebernard
Messages postés404Date d'inscriptionlundi 9 juin 2003StatutMembreDernière intervention 4 septembre 20131 28 avril 2009 à 15:18
J'ai essayé et ça me dit "variable objet ou variable bloc with non definie"
Mais je me demande si la page a le temps de se charger ????
En plus le proxy de mon boulot, cet abruti y dit que y'a un virus HUGE dans ton zip....quand j'te dis que j'suis pas aidé, j'travaille avec des gants de boxe :-)
cs_andrebernard
Messages postés404Date d'inscriptionlundi 9 juin 2003StatutMembreDernière intervention 4 septembre 20131 28 avril 2009 à 15:25
Bon, je pense avoir reglé momentanément le probleme de la page pas chargé,
J'ai tout fait comme t'as dit IE.getElementsByName("ssPageName")(0).submit et cette fois il me dit cette fois l'objet ne gere pas cette methode :-(