IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Java Discussion :

Analyser une image/simuler clic sur une fenetre externe


Sujet :

Java

  1. #1
    Membre émérite
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Septembre 2008
    Messages
    1 190
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2008
    Messages : 1 190
    Points : 2 657
    Points
    2 657
    Par défaut Analyser une image/simuler clic sur une fenetre externe
    Hello, j'aurai une requête un peu spéciale.
    Pour simplifier j'ai un programme d'alerte, sur une page web, qui peut afficher de temps en temps une alerte, sous la forme d'une boite de dialogue contenant un formulaire. Je n'ai pas accès au code de ceci, et comme c'est du RAP pas de code html à analyser. Je n'ai que l''image'.

    Mon but est d'avoir un programme java, que je lance apres avoir mis cette page web au premier plan, qui va tous les x secondes analyser l'image, puis en fonction simuler un clic dans le programme.

    Je connais bien java, mais je n'ai jamais fait de programme java devant interagir de cette manière.

    Quelque question:
    -comment puis-je simuler un clic de souris sur l'écran en dehors d'une fenetre java classique? Ne serait-ce que dire clic à 25,25 ça me suffirait.

    -mon gros comment analyser ce qui s'affiche? Naivement je pense à faire une capture d'ecran avec java, puis pixel par pixel regarder à partir d'une liste d'image prédéfinie si l'une s'y trouve. Mais comment gérer les problemes de couleurs qui peuvent légèrement varier, ou de taille?

    si quelqu'un a des idées ou peut m'indiquer les classes/librairie java me permettant de faire ça, ça m'aiderait beaucoup!
    Merci!

  2. #2
    Modérateur
    Avatar de joel.drigo
    Homme Profil pro
    Ingénieur R&D - Développeur Java
    Inscrit en
    Septembre 2009
    Messages
    12 430
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Ingénieur R&D - Développeur Java
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2009
    Messages : 12 430
    Points : 29 131
    Points
    29 131
    Billets dans le blog
    2
    Par défaut
    Salut,

    Citation Envoyé par deathness Voir le message
    Je n'ai pas accès au code de ceci, et comme c'est du RAP pas de code html à analyser. Je n'ai que l''image'.
    Comment ça ? Si tu regardes le source de ta page Web dans ton navigateur, tu ne vois vraiment qu'une image(c'est-à-dire que le content type est image/xxx) ? J'en doute. Qu'il n'y ait pas de fichier html côté serveur, ne veut pas dire que ce n'est pas du html qui est généré dynamiquement.

    Ensuite, je regarderais personnellement ce qu'on peut faire avec Selenium, plutôt que d'essayer de quelque chose type analyse d'image, et simulation de clic, bidouille hasardeuse et complexe. Ou encore utiliser htmlunit pour le faire de façon invisible et automatique (peut-être même que ce n'est même pas nécessaire et qu'un simple post suffit, suite à une analyse de chaine de caractères).
    L'expression "ça marche pas" ne veut rien dire. Indiquez l'erreur, et/ou les comportements attendus et obtenus, et donnez un Exemple Complet Minimal qui permet de reproduire le problème.
    La plupart des réponses à vos questions sont déjà dans les FAQs ou les Tutoriels, ou peut-être dans une autre discussion : utilisez la recherche interne.
    Des questions sur Java : consultez le Forum Java. Des questions sur l'EDI Eclipse ou la plateforme Eclipse RCP : consultez le Forum Eclipse.
    Une question correctement posée et rédigée et vous aurez plus de chances de réponses adaptées et rapides.
    N'oubliez pas de mettre vos extraits de code entre balises CODE (Voir Mode d'emploi de l'éditeur de messages).
    Nouveau sur le forum ? Consultez Les Règles du Club.

  3. #3
    Membre émérite
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Septembre 2008
    Messages
    1 190
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2008
    Messages : 1 190
    Points : 2 657
    Points
    2 657
    Par défaut
    Non une analyse du code html ne donnera rien, tout se passe à l'intérieur de l'appli, il n'y a pas de changement d'url, de requete post, etc.
    Certes ça fait bidouille mais ça répondra parfaitement à mon besoin : je n'ai pas besoin de plus, les images ne bougeront pas et sont a des emplacements fixes.
    selenium n'a pas besoin d'avoir du code html pour marcher?

  4. #4
    Modérateur
    Avatar de joel.drigo
    Homme Profil pro
    Ingénieur R&D - Développeur Java
    Inscrit en
    Septembre 2009
    Messages
    12 430
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Ingénieur R&D - Développeur Java
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2009
    Messages : 12 430
    Points : 29 131
    Points
    29 131
    Billets dans le blog
    2
    Par défaut
    Citation Envoyé par deathness Voir le message
    Non une analyse du code html ne donnera rien, tout se passe à l'intérieur de l'appli
    Tu en est vraiment sûr ? Tu as pris la peine de regarder au moins ? C'est du Eclipse RAP ?
    Citation Envoyé par deathness Voir le message
    , il n'y a pas de changement d'url,
    ça n'a rien à voir avec le fait qu'il n'y ait pas de code html. S'il y a des composants interactifs dans l'application (des champs, des liens, etc), il y a de forte chances que cela soit du html/css, à moins d'un système à la vnc.
    L'expression "ça marche pas" ne veut rien dire. Indiquez l'erreur, et/ou les comportements attendus et obtenus, et donnez un Exemple Complet Minimal qui permet de reproduire le problème.
    La plupart des réponses à vos questions sont déjà dans les FAQs ou les Tutoriels, ou peut-être dans une autre discussion : utilisez la recherche interne.
    Des questions sur Java : consultez le Forum Java. Des questions sur l'EDI Eclipse ou la plateforme Eclipse RCP : consultez le Forum Eclipse.
    Une question correctement posée et rédigée et vous aurez plus de chances de réponses adaptées et rapides.
    N'oubliez pas de mettre vos extraits de code entre balises CODE (Voir Mode d'emploi de l'éditeur de messages).
    Nouveau sur le forum ? Consultez Les Règles du Club.

  5. #5
    Membre émérite
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Septembre 2008
    Messages
    1 190
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2008
    Messages : 1 190
    Points : 2 657
    Points
    2 657
    Par défaut
    J'ai analysé tout le code source de la page, sans trouver aucun élément en lien avec l'appli.
    De mémoire, c'était une des raisons du choix de l'appli, le fait que le code soit caché.
    Je ne cherche donc pas de manière de ce coté là, l'autre solution me convient bien mieux de plus pour d'autre raison que je n'ai pas détaillé.

  6. #6
    Modérateur
    Avatar de joel.drigo
    Homme Profil pro
    Ingénieur R&D - Développeur Java
    Inscrit en
    Septembre 2009
    Messages
    12 430
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Ingénieur R&D - Développeur Java
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2009
    Messages : 12 430
    Points : 29 131
    Points
    29 131
    Billets dans le blog
    2
    Par défaut
    Citation Envoyé par deathness Voir le message
    J'ai analysé tout le code source de la page, sans trouver aucun élément en lien avec l'appli.
    Ça ne réponde pas à la question "Est-ce que c'est du Eclipse RAP". Le source de la page peut être du html statique, avec un javascript qui génére dynamiquement la page réellement affichée (ce qui est le cas avec du Eclipse RAP). On le voit non pas avec "Afficher le source", mais avec "Outils de développement", ou quelque soit le nom que ça a dans ton navigateur.

    Après, si tu veux absolument faire de l'analyse d'image, fais-le. Pour le clic, en revanche, s'il n'y a pas de bouton dans la page, j'ai dû mal à voir comment il pourrait fonctionner s'il ne correspond pas à une requête. En tout cas, Selenium permet de manipuler le DOM, ça oui, mais je ne sais absolument pas s'il y a moyen de simuler un clic n'importe où dans la page. La classe Robot de Java te permettra de faire un clic n'importe où dans l'écran, par ailleurs,
    L'expression "ça marche pas" ne veut rien dire. Indiquez l'erreur, et/ou les comportements attendus et obtenus, et donnez un Exemple Complet Minimal qui permet de reproduire le problème.
    La plupart des réponses à vos questions sont déjà dans les FAQs ou les Tutoriels, ou peut-être dans une autre discussion : utilisez la recherche interne.
    Des questions sur Java : consultez le Forum Java. Des questions sur l'EDI Eclipse ou la plateforme Eclipse RCP : consultez le Forum Eclipse.
    Une question correctement posée et rédigée et vous aurez plus de chances de réponses adaptées et rapides.
    N'oubliez pas de mettre vos extraits de code entre balises CODE (Voir Mode d'emploi de l'éditeur de messages).
    Nouveau sur le forum ? Consultez Les Règles du Club.

  7. #7
    Membre émérite
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Septembre 2008
    Messages
    1 190
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2008
    Messages : 1 190
    Points : 2 657
    Points
    2 657
    Par défaut
    Je m'en suis finalement sorti avec la classe Robot.
    Screenshot de l'ecran, récupération de l'image, comparaison avec une banque d'image et clic ou je veux.
    Le tout marche plutôt bien.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. 2 actions différentes avec un clic sur une image
    Par beegees dans le forum Général JavaScript
    Réponses: 13
    Dernier message: 26/02/2008, 19h37
  2. Clic sur une image
    Par nettoyerforum dans le forum Langage
    Réponses: 5
    Dernier message: 24/05/2007, 19h19
  3. Afficher une image au clic sur un bouton
    Par lycaon dans le forum Général VBA
    Réponses: 4
    Dernier message: 23/04/2007, 19h21
  4. Réponses: 1
    Dernier message: 25/03/2007, 18h20
  5. getMouseX() sur une image et pas sur la fenetre?
    Par WeDgEMasTeR dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 26/04/2006, 17h06

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo