Page 1 sur 1

[R] Problème avec l'UDF Firefox

Posté : ven. 04 juin 2010 22:48
par papami
Bonsoir,

Quelqu'un à déjà essayé cet exemple ?

UDF en ligne et MozRepl actif, à part ouvrir la page dans Firefox et faire défiler (ce que l'on peut faire sans UDF) il ne se passe rien d'autre, càd que les commandes _FFSetValue( ne semblent pas opérer, l'affichage restant vierge :(

est-ce normal ?

Merci

Re: [UDF] Firefox (FF.au3)

Posté : ven. 04 juin 2010 23:33
par papami
Bon, après quelques essais je crois comprendre que l'info est transmise, sans mise à jour de l'affichage...

Re: [UDF] Firefox (FF.au3)

Posté : sam. 05 juin 2010 01:15
par timmalos
Tu veux faire quoi, remplir un formulaire?
N'oublie pas de le valider, normalement tu devrais voir l'ecran bouger si ca marche.

Re: [UDF] Firefox (FF.au3)

Posté : sam. 05 juin 2010 22:48
par papami
Dans un premier temps j'essaye une automatisation d'envoi ou relève de courrier sur un webmail

page 1 de l'URL appelée il y a en particulier :

<form action="url_de_retour" name="toto" id="toto" method="post">
...
<input class="texte1" id="utilisateur" name="utilisateur" value="" type="text">
...
<button type="submit" name="envoyer">
...

étant donné que FireFox m'affiche le nom mémorisé il suffirait de valider pour accéder à la suite :

j'ai donc essayé _FFFormSubmit("toto") ... aucune réaction
j'ai essayé aussi _FFClick("envoyer") ... idem

par ailleurs j'ai essayé
_FFFormReset()
_FFSetValue("utilisateur", "paul.durand", "text")
$a=_FFGetValue("utilisateur") : j'ai 0 dans $a

on dirait qu'aucune action n'est prise en compte comme si le formulaire était protégé... (pour éviter les robots ?)

Je précise que j'utilise actuellement un autre script à base de MouseClicK et Send, tout simplement, et que cela fonctionne ... tant qu'il n'y a pas une autre application passant au premier plan durant les opérations !
donc moyennement fiable, et comme FF.au3 offre des fonctions intéressantes je pensais l'utiliser pour cela.

Merci pour toute info.

Re: [..] Problème avec l'UDF Firefox

Posté : sam. 05 juin 2010 22:57
par Tlem
Le forum Fonctions et UDF n'est pas prévus pour traiter les messages d'aide.
J'ai donc séparé les derniers messages de papami afin de créer un nouveau sujet.

Re: [..] Problème avec l'UDF Firefox

Posté : dim. 06 juin 2010 09:25
par timmalos
Avez vous bien mis le _FFConnect()?
Ensuite, affichez le @error de votre fonction qui retourne 0 si vous voulez comprendre ou est le probleme!
Si la fonction vous retourne 0, y'a un probleme, pour savoir lequel, faites un MsgBox(0,'',@error)

Ensuite, pour verifier que MozRepl est bien actif, essayez cet exemple:

Code : Tout sélectionner

#include <FF.au3>

_FFConnect() ; eine Verbindung zu FireFox (FF) aufbauen

If _FFIsConnected() Then ; überprüfen ob die Verbindung besteht
    _FFOpenURL("http://ff-au3-example.thorsten-willert.de/") ; eine Seite öffnen

    ; herunterscrollen, damit man sieht was gemacht wird
    ; das ist für die Anwendung nicht notwendig
    _FFAction("ScrollXY", 0, 300)

    ; und ein Formular ausfüllen
    _FFSetValue("fname", "Max", "name")
    _FFSetValue("lname", "Mustermann", "name")
    ; ...
Else
    MsgBox(64, "Fehler:", "Es konnte keine Verbindung zu FF hergestellt werden.")
EndIf   
 

Re: [..] Problème avec l'UDF Firefox

Posté : sam. 12 juin 2010 11:39
par papami
Tlem a écrit :Le forum Fonctions et UDF n'est pas prévus pour traiter les messages d'aide.
J'ai donc séparé les derniers messages de papami afin de créer un nouveau sujet.
Oui, compris, excusez-moi
Merci

Re: [..] Problème avec l'UDF Firefox

Posté : sam. 12 juin 2010 12:24
par papami
timmalos a écrit :Avez vous bien mis le _FFConnect()?
Ensuite, affichez le @error de votre fonction qui retourne 0 si vous voulez comprendre ou est le probleme!
Si la fonction vous retourne 0, y'a un probleme, pour savoir lequel, faites un MsgBox(0,'',@error)

Ensuite, pour verifier que MozRepl est bien actif, essayez cet exemple:

Code : Tout sélectionner

#include <FF.au3>
_FFConnect() ; eine Verbindung zu FireFox (FF) aufbauen
... voir le code en question message précédent ...
 
OUI, ma première question portait justement sur cet exemple :
1ère remarque : après plusieurs essais nuls j'ai fini par comprendre qu'il fallait d'abord lancer (manuellement) FireFox ce que je trouve moyen comme exemple :(
J'en ai trouvé un autre qui remplace les 3 premières lignes par une seule:
_FFStart("http://ff-au3-example.thorsten-willert.de/")
c'est quand même pas plus mal :).
Et si Firefox n'est pas lancé ... rien, aucun message d'erreur
2ème remarque : que doit donner cet exemple comme résultat ?
car à part le scroll je ne vois rien d'autre... je l'ai donc modifié ainsi :

Code : Tout sélectionner

#include <FF.au3>
_FFConnect()
    If _FFIsConnected() Then 
    _FFOpenURL("http://ff-au3-example.thorsten-willert.de/")
$a=_FFGetValue("lname")
MsgBox(0, @error, $a)   
    _FFAction("ScrollXY", 0, 300)
    _FFSetValue("fname", "Max", "name")
    _FFSetValue("lname", "Mustermann", "name")
$a=_FFGetValue("lname")
MsgBox(0, @error, $a)
Else
    MsgBox(64, "Erreur:", "Pas de connexion FFX.")
EndIf   
 
j'ouvre FireFox (je vérifie que MozRepl est bien actif, je lance cet exemple
la page est bien chargée.
au 1er test de "lname" j'ai 8 pour le @error et 0 dans $a (je devrais avoir "" ?)
au second : même chose.

dans la sortie console, j'ai :
_FFGetValue ==> No match: $sElement: lname
admettons que mon appel ne soit pas correct, dans la doc il n'y a pas de lien d'exemple pour cette fonction !
mais j'ai aussi :
_FFSetValue ==> No match: $sElement: .getElementsByName('Mustermann')[0]
et là c'est bien un appel de l'exemple d'origine ... qui ne marche pas donne rien... chez moi

où est le loup :mrgreen: ?

Re: [..] Problème avec l'UDF Firefox

Posté : sam. 12 juin 2010 13:12
par timmalos
Je me suis occupé de votre problème et je suis allé regarder directement dans FF.au3. Il se trouve que l'exemple n'est aperemment pas à jour, car il y avait plusieurs problèmes. Voilà ce qui marche :

Code : Tout sélectionner

#include "FF.au3"
    _FFStart("http://ff-au3-example.thorsten-willert.de/") ;//Peut etre remplacé par _FFConnect, _FFIsconnected etc...
    $a=_FFGetValue("lname","name");// ICI il faut rajouter le 'name' sinon de base il recherche un 'element' donc une place dans la page
    MsgBox(0, @error, $a) :// On obtient bien une string vide
    _FFAction("ScrollXY", 0, 300)
    _FFSetValue("Max","fname", "name");// Ici il fallait inverser, on met d'abord la valeur, ensuite si c'est un nom, un id, ou autre
    _FFSetValue("Mustermann","lname", "name");// De meme
$a=_FFGetValue("lname","name");// On obttient bien Mustermann
MsgBox(0, @error, $a)
 

Re: [..] Problème avec l'UDF Firefox

Posté : sam. 12 juin 2010 13:58
par papami
:evil: diable d'exemple ! :mrgreen:
j'espère qu'ils ne sont pas tous du même modèle !

effectivement, mes compétences étant restreintes, je ne suis pas allé fouiller dans l'UDF ... mais la prochaine fois j'essayerai.

Vos corrections fonctionnent. MERCI pour votre coup de main que j'apprécie.

Re: [..] Problème avec l'UDF Firefox

Posté : sam. 12 juin 2010 16:07
par timmalos
n'oubliez pas d'ajouter le [R] en début de votre sujet

Re: [..] Problème avec l'UDF Firefox

Posté : sam. 12 juin 2010 16:18
par papami
timmalos a écrit :n'oubliez pas d'ajouter le [R] en début de votre sujet
[KO] [OK] :oops: