WebBrowser Input

cs_Pipoo Messages postés 5 Date d'inscription jeudi 10 juillet 2003 Statut Membre Dernière intervention 5 septembre 2003 - 29 juil. 2003 à 15:12
cs_kabal Messages postés 1 Date d'inscription samedi 22 mars 2003 Statut Membre Dernière intervention 12 février 2004 - 12 févr. 2004 à 22:35
Bonjour à tous,

Alors, je commence par la description :
-dans mon appli, j'utilise un TWebBrowser pour afficher une page
-j'ai trouvé un code qui permet de récuperer le texte de la page :WebBrowser.oleobject.document.body.innertext

ma question :
est ce que c'est possible de recuperer tous les objets de la page internet (les INPUT (bouton, zone de texte)), et de modifier leur valeur.
par exemple, pour un bouton de la page, peut on par delphi simuler un clic sur ce bouton
et pour une zone de texte, peut on grace à delphi, mettre du texte dedans (et le recuperer) ?

En attendant vos réponses. :)
A bientot, et ne codez pas trop ;)

7 réponses

cs_niko72 Messages postés 16 Date d'inscription mercredi 9 avril 2003 Statut Membre Dernière intervention 20 juillet 2004
29 juil. 2003 à 17:20
salut pipoo,
pour recuperer les objets d'une page,
je peux t'en donner qq'uns:

Liens:
nombre de liens:webbrowser1.oleobject.Document.links.length
accéder à un lien:webbrowser1.oleobject.Document.links.item(i)

Images:
nombre:webbrowser1.oleobject.Document.images.length
1 image:webbrowser1.OleObject.document.images.item(i)
sa hauteur: webbrowser1.OleObject.document.images.item(i).height
son nom:
nomimage:=webbrowser1.OleObject.document.images.item(i).nameprop
sa taille: webbrowser1.OleObject.document.images.item(i).filesize
son adresse:
adresse:=webbrowser1.OleObject.document.images.item(i).src
Telecharger cette image:
urldownloadtofile(nil,Pchar(adresse),Pchar('E:\repertoire\de\stockage\'+nomimage),0,nil);

...

Pour le texte, t'as deja trouvé.
Simuler un click, c'est aller sur la page referencée par le lien du bouton donc WebBrowser1.navigate(lien du bouton)

Si tu veux remplir un formulaire en automatique,
tu peux utiliser un sequenceur qui simule le clavier et la souris, tu en trouveras sur ce site

Si le click d'envoi du formulaire passe les paramètres input dans la barre d'adresse, tu peux te diriger vers ce lien en remplissant toi-meme ces parametres :
je m'explique, si dans google tu tapes delphi, le clic du bouton t'envoie sur une page dont l'adresse est "http://www.google.fr/search?q=delphi&ie=ISO-8859-1&hl=fr&meta="
et toi pour simuler l'ecriture de delphi dans la zone de texte et le clic sur le bouton, tu peux utiliser simplement
monmotaenvoyer:='delphi';
WebBrowser1.navigate('http://www.google.fr/search?q='+monmotaenvoyer+'&ie=ISO-8859-1&hl=fr&meta=');
si c un formulaire plus complexe, c pareil, tu auras http://www.site.com/machin?nom=tonnom&prenom=tonprenom&adresse=tonadresse&codepostal=toncodepostal...etc... a toi de bien trouvé quels prametres correspondent à quels champs puis de creer le lien adequat et utiliser webbrowser1.navigate(tonlien); ...

mais ceci ne marche pas pour tout les formulaires, cela depend si c'est perl, cgi, ...

qd tu click sur un bouton envoi d'un formulaire, tu utilise la methode post ou get, que tu peux simuler egalement avec Telnet en utilisant un composant indy

voila deja qques elements de reponse
je pense ne pas avoir été super clair, mais en cas de souci, je pourrais peut-etre detailler un peu plus certains points
sur ce, bonne prog
niko
0
Rejoignez-nous