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

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    avril 2005
    Messages
    296
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : avril 2005
    Messages : 296
    Points : 58
    Points
    58

    Par défaut Geckodriver requetes POST et GET

    Bonjour,

    J'aimerais savoir si quelqu'un du forum s'y connait un peu en requête GECKODRIVER ?

    C'est à dire si quelqu'un a qui ces mots causent :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    {"capabilities": {"browserName": "firefox","javascriptEnabled": true,"acceptInsecureCerts": true,"cssSelectorsEnabled": true,"moz:webdriverClick": true,"moz:firefoxOptions": {"binary": "H:/A/J/C/O/Firefox50.1.0/App/Firefox/Firefox.exe"}}}
    Merci et bonne journée

  2. #2
    Modérateur

    Avatar de NoSmoking
    Homme Profil pro
    Inscrit en
    janvier 2011
    Messages
    12 998
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations forums :
    Inscription : janvier 2011
    Messages : 12 998
    Points : 31 068
    Points
    31 068

    Par défaut

    Bonjour,
    quelle est ta question, car cela ressemble simplement à un objet JSON retourné
    Code js : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    {
      "capabilities": {
        "browserName": "firefox",
        "javascriptEnabled": true,
        "acceptInsecureCerts": true,
        "cssSelectorsEnabled": true,
        "moz:webdriverClick": true,
        "moz:firefoxOptions": {
          "binary": "H:/A/J/C/O/Firefox50.1.0/App/Firefox/Firefox.exe"
        }
      }
    }

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    avril 2005
    Messages
    296
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : avril 2005
    Messages : 296
    Points : 58
    Points
    58

    Par défaut

    En fait, j'essaie de faire quelque chose que peu de gens font, d’après le peu d'aides que j'ai de trouvé sur le WEB depuis plusieurs mois, et encore moins en français

    J'essaie de piloter Firefox, ce qui est assez commun lorsque l'on utilise PYTHON, RUBY, C#, VB.NET, PHP, etc ..enfin bref pas mal de langages POO.
    Et surtout lorsque l'on utilise la librairie SELENIUM et un de ces langages ci-dessus précités

    Mais un copain et moi avons découvert que nous ne sommes pas obligé d'utiliser la POO, et encore moins SELENIUM pour accomplir ce travail.
    C'est possible d'utiliser un langage procédural (dont je suis un adepte inconditionnel) et attaquer directement le WebDriver correspondant au navigateur
    Soit "ChromeDriver" pour Chrome, et "GeckoDriver" pour FF

    Car en fait, au début je croyais naïvement que ces gros langages et cette grosse librairie communiquaient internement grâce aux classes et autres joyeuseries que je déteste, comme la plupart des librairies de notre époque
    Mais pas du tout, mon copain a trouvé que l'on pouvait envoyer directement des ordres aux WebDrivers par le biais de banale requêtes TCP (POST ou GET), car ils se comportent comme des PROXY et interceptent tout ce qui passe par les navigateurs, puis leurs commandent internement ce qu'ils doivent faire.

    Fort de cette découverte, nous avons travaillé avec un autre copain à lui envoyer ces fameux ordres, et cela marche plutôt bien, pour un commencement
    Nous arrivons à ouvrir le navigateur, voici un exemple de requête TCP à envoyer :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    REQUETE ==> POST /session HTTP/1.1
    Connection: Keep-Alive
    Content-Type: application/json;charset=utf-8
    Accept: */*
    User-Agent: Mozilla/4.0
    Content-Length: 238
    
    {"capabilities": {"browserName": "firefox","javascriptEnabled": true,"acceptInsecureCerts": true,"cssSelectorsEnabled": true,"moz:webdriverClick": true,"moz:firefoxOptions": {"binary": "H:/A/J/C/O/Firefox50.1.0/App/Firefox/Firefox.exe"}}}
    Puis mon copain a trouvé comment exécuter du JS, donc passer la fameuse barrière que MOZILLA a imposé en supprimant la possibilité d'injecter du JS dans la barre d'adresse
    Il a trouvé aussi le pendant avec CHROME, qui au passage est beaucoup plus facile à piloter, mais nous ne sommes pas arrivé à utiliser la commande native "/click" par exemple.
    Pour l'instant, nous trichons en injectant du JS qui click à la place de la commande inactive

    Alors ma question était de savoir si quelqu'un dans ce forum avait déjà fait ce genre de choses, afin de pouvoir nous aider dans nos recherches
    Car les docs et aides sont très réduites à ce sujet, tout le monde préférant la "simplicité" que l’accès direct

    Je ne savais pas ou poser cette question qui ne répond pas vraiment aux rubriques que j'ai cherché dans ce forum
    En tout cas merci de ta réponse, et de l’intérêt que tu as porté à ma question

Discussions similaires

  1. Différence entre POST et GET
    Par BizuR dans le forum Balisage (X)HTML et validation W3C
    Réponses: 5
    Dernier message: 17/09/2009, 02h48
  2. Requête POST dans un script bash
    Par desperado dans le forum Linux
    Réponses: 4
    Dernier message: 11/12/2007, 23h38
  3. Optimiser les requetes POST et GET
    Par localhost dans le forum Formulaires
    Réponses: 3
    Dernier message: 02/04/2006, 03h53
  4. [HTTPS] Problème de Post et Get avec Apache et SSL
    Par bartrik dans le forum Apache
    Réponses: 5
    Dernier message: 17/09/2004, 09h37
  5. POST vs GET
    Par EvilAngel dans le forum ASP
    Réponses: 2
    Dernier message: 02/06/2004, 23h52

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