Crunchez vos adresses URL
|
Calculez la conso électrique de votre PC
|
Hébergez vos photos
Affichage des résultats 1 à 12 sur 12
  1. #1
    Bonjour à tous !

    Ma comptable est absente et je dois me taper son boulot, hélas.
    Dans son travail il y a un truc très chiant qui consiste à saisir les paiements que nous on fait des clients.

    Ca se présente comme cela :
    -On a une liste csv, avec le numéro de compte client, la facture, et la somme qu'on a reçu.
    -Il faut ouvrir notre logiciel de gestion interne, qui est en fait une interface web, saisir le numéro de la facture dans le menu facture, puis sélectionner "paiement", et ensuite saisir le paiement, et valider.
    -Et bis répetita.

    Là j'ai juste les paiements de 15 jours à saisir, soit... 400 lignes..
    C'est pas très fun !

    J'ai quelques bases de programmation, je me demandais vers quel type de langage je pourrais m'orienter pour :
    copier une valeur dans mon fichier CSV
    bouger la souris pour qu'elle aille toute seule dans le champ "facture", et colle la valeur etc..
    Il doit y avoir moyen de programmer un truc dégueulasse, mais qui fonctionne, pour ne pas avoir à faire quelque chose d'aussi stupide soi même non ?
    Genre vraiment dégueulasse, avec des timers, et des trucs qui lui disent "clique avec la souris aux coordonnées x et y machin chose"

    Si vous avez des tutos/ressources à me conseiller je suis preneur !

    edit : d'ailleurs il me semble que c'est possible tout simplement en VBA ?
    Dernière modification par dingo47 ; 09/07/2019 à 18h41.

  2. #2
    J'utiliserais autoit pout ça mais même si ce n'est pas compliqué, le temps que tu comprennes pour le coder et comprendre le compilateur... c'est selon tes capacités, (si ça te prends 3/4 heures tu auras peut être mieux fait de le faire à la main)
    cherches les fonction mouse move, mouse click, mousegetpos et tu trouveras les samples correspondants,

    par exemple pour mousemove

    MouseMove ( x, y [, speed = 10] )
    Paramètres
    x La coordonnée x du point de l'écran où déplacer la souris.
    y La coordonnée y du point de l'écran où déplacer la souris.
    speed [optionnel] La vitesse de déplacement de la souris, valeur dans la plage 1 (le plus rapide) à 100 (le plus lent). Une vitesse de 0 déplace la souris instantanément. La vitesse par défaut est 10.

    MouseMove(10, 100) ; Déplace le curseur de la souris à la position (10, 100).
    MouseMove(700, 700, 0) ; Déplace le curseur de la souris à la position (700, 700) et le déplace instantanément.

  3. #3
    Où se servir d'un logiciel de macro comme authotkey (https://www.autohotkey.com/) pour réaliser cette opération répétitive. Cela bloque le PC le temps de se réaliser mais c'est plutôt efficace. J'ai vu un collègue passer des contenu de fichiers Excel dans des interfaces Web comme ça.
    Par contre comme dit au dessus il va te falloir le temps de comprendre comment cela fonctionne. Et des fois on a terminé l'opération à la main avant. Et si c'est du one shot et non pas un truc vraiment récurent, le gain est faible. A voir donc.
    Et un temps pour chaque chose sous le ciel...

  4. #4
    autohotkey est un dérivé d'autoit et dans notre cas ça revient au même
    La fonction mouse mouse dans autohotkey:
    MouseMove, X, Y , Speed, Relative

    et dans autoit
    MouseMove ( x, y [, speed = 10] )

  5. #5
    Alternative : avec un peu de bol, il suffit de lancer une requête HTTP pour valider une ligne sur l'interface web.
    Donc :
    - tu ouvres ton navigateur, F12 pour avoir les outils de devs (et là tu ouvres la partie "réseau", qui consigne chaque appel HTTP), tu rentres une ligne à la main, et tu vois quelle requête envoi ta ligne
    - maintenant tu copies ladite requête (qui contient en paramètres les données de la ligne), et tu te fais un bête programme qui transforme le CSV en liste d'appels HTTP (par exemple des appels CURL) - pour ça, on pourra te fournir une commande qui fait la transformation
    - tu joues tes 400 CURL d'un coup

    Je trouve cela plus safe que Autoit, car imagine ce qui se passe si le site web change ne serait-ce qu'un peu sa présentation quelques fois : ça ira tellement vite que tu ne pourras que constater les dégâts après coup. C'est un cas extrême, bien sûr.
    Dernière modification par gros_bidule ; 11/07/2019 à 12h26.

  6. #6
    Ton truc c'est bien plus de la bidouille qu'un petit script et en plus il récupère les valeurs dans un csv.
    j'ai fait ça des tas de fois et avec un simple contrôle de la taille de la fenêtre ou coller le navigateur en fullscreen je ne vois pas trop de cas extrême, mais comme je l'ai dit, il aurait plus vite fait de faire ça à la main que d'apprendre autoit ou autre chose. Bien qu'une fois appris on puisse faire plein de trucs avec, y compris vérifier à chaque ligne que les valeurs ont bien été mise dans le document web en comparant les valeurs du csv et de l'interface web après coup si on veut la jouer sécure maintenant que j'y penses d'ailleurs .

  7. #7
    Citation Envoyé par fletch2099 Voir le message
    J'utiliserais autoit pout ça mais même si ce n'est pas compliqué, le temps que tu comprennes pour le coder et comprendre le compilateur... c'est selon tes capacités, (si ça te prends 3/4 heures tu auras peut être mieux fait de le faire à la main)
    cherches les fonction mouse move, mouse click, mousegetpos et tu trouveras les samples correspondants,

    par exemple pour mousemove

    MouseMove ( x, y [, speed = 10] )
    Paramètres
    x La coordonnée x du point de l'écran où déplacer la souris.
    y La coordonnée y du point de l'écran où déplacer la souris.
    speed [optionnel] La vitesse de déplacement de la souris, valeur dans la plage 1 (le plus rapide) à 100 (le plus lent). Une vitesse de 0 déplace la souris instantanément. La vitesse par défaut est 10.

    MouseMove(10, 100) ; Déplace le curseur de la souris à la position (10, 100).
    MouseMove(700, 700, 0) ; Déplace le curseur de la souris à la position (700, 700) et le déplace instantanément.
    Utiliser la touche de tabulation pour passer d’un champ à l’autre sera un peu plus robuste.
    BFBC2: « Passez-moi la mine ! » exhorta l'ingénieur BF3: « Le javelin a eu ma peau » déplora le tankiste

  8. #8
    Citation Envoyé par fletch2099 Voir le message
    Ton truc c'est bien plus de la bidouille qu'un petit script et en plus il récupère les valeurs dans un csv.
    C'est marrant, moi c'est l'inverse. C'est ta solution que je trouve un peu bidouille et celle de gros_bidule que je trouve plus propre et plus robuste.
    Ça fait juste un script à lancer en lui filant en entrée un fichier csv et le PC reste disponible.
    Mumble: Crazralfrill

  9. #9
    Citation Envoyé par GrandFather Voir le message
    Utiliser la touche de tabulation pour passer d’un champ à l’autre sera un peu plus robuste.
    oui et? Il voulait quelque chose pour bouger la souris je lui ai donné, a voir avec l'auteur du topic

    Citation Envoyé par Visslar Voir le message
    C'est marrant, moi c'est l'inverse. C'est ta solution que je trouve un peu bidouille et celle de gros_bidule que je trouve plus propre et plus robuste.
    Ça fait juste un script à lancer en lui filant en entrée un fichier csv et le PC reste disponible.
    Clair que c'est marrant ^^ de trouver ça:

    Citation Envoyé par gros_bidule Voir le message
    Alternative : avec un peu de bol, il suffit de lancer une requête HTTP pour valider une ligne sur l'interface web.
    Donc :
    - tu ouvres ton navigateur, F12 pour avoir les outils de devs (et là tu ouvres la partie "réseau", qui consigne chaque appel HTTP), tu rentres une ligne à la main, et tu vois quelle requête envoi ta ligne
    - maintenant tu copies ladite requête (qui contient en paramètres les données de la ligne), et tu te fais un bête programme qui transforme le CSV en liste d'appels HTTP (par exemple des appels CURL) - pour ça, on pourra te fournir une commande qui fait la transformation
    - tu joues tes 400 CURL d'un coup
    plus safe et plus simple qu'un programme mais bon (on peut ajouté des contrôles d’erreurs etc comme indiqué), Ça reste de la programmation Windows 32/64 bits. Oui la programmation ça reste de la bidouille par rapport à passer en mod dev sur un navigateur pour piquer les requêtes et les modifier... ou pas.


    Le gars voulait une solution, j'ai soumis mon idée pour l'aider alors que personne ne l'avait fait, Gros aussi l'a fait et a lui de voir et, vos avis hein...
    A ciao

  10. #10
    Citation Envoyé par fletch2099 Voir le message


    plus safe et plus simple qu'un programme mais bon (on peut ajouté des contrôles d’erreurs etc comme indiqué), Ça reste de la programmation Windows 32/64 bits. Oui la programmation ça reste de la bidouille par rapport à passer en mod dev sur un navigateur pour piquer les requêtes et les modifier... ou pas.


    Le gars voulait une solution, j'ai soumis mon idée pour l'aider alors que personne ne l'avait fait, Gros aussi l'a fait et a lui de voir et, vos avis hein...
    A ciao
    Non mais prend pas la mouche, on a le droit de ne pas être d'accord

    Et je pense que tu as peut être mal compris la solution de gros_bidule.
    Ouvrir la console c'est juste pour analyser la forme de la requête, tu ne fais rien à partir de là.
    Ensuite tu fais un petit script qui va lire ton CSV et générer une requête HTTP POST par ligne.
    Mumble: Crazralfrill

  11. #11
    De toute façon on a fait fuir Dingo avec nos solutions alors prout!

  12. #12
    Yeah, désolé, je n'aurais pas du suggérer une comparaison entre les deux solutions. C'est souvent la merde dès qu'on cherche à savoir si l'éléphant est plus fort que l’hippopotame. Tout le monde sait que dans les deux cas ça écrase le rhinocéros
    Le type prendra la solution qu'il veut, puis voilà. Mais il en prend une, obligé, avec la bande on ira vérifier sinon ça va barder.

Règles de messages

  • Vous ne pouvez pas créer de nouvelles discussions
  • Vous ne pouvez pas envoyer des réponses
  • Vous ne pouvez pas envoyer des pièces jointes
  • Vous ne pouvez pas modifier vos messages
  •