Sélénium: Comment Injecter/exécuter un script Javascript dans une Page avant le chargement/l'exécution de toutes les autres scripts de la page?

Je suis en utilisant le sélénium python webdriver afin de parcourir quelques pages. Je veux injecter un code javascript dans une des pages avant tous les autres codes Javascript chargés et exécutés. D'autre part, j'ai besoin de mon code JS pour être exécuté en tant que premier code JS de la page. Est-il un moyen de le faire par le Sélénium?

Je l'ai googlé pour un couple d'heures, mais je ne pouvais pas trouver une réponse!

  • Mais ma question est que la façon dont je peux injecter du code JS en utilisant Selenium Webdriver avant le chargement de la page. Je n'ai pas accès au contenu de ces pages, donc je ne peux pas injecter un code JS en eux, à moins que j'utilise un proxy pour réécrire le contenu de la page.
  • Je pense, j'ai trouvé la réponse. Selon grokbase.com/t/gg/selenium-users/12a99543jq/..., Nous ne pouvons pas faire, qu'à moins d'utiliser un proxy pour injecter un script au début de la page.
  • Seriez-vous en mesure d'installer une application comme GreaseMonkey ou Tampermonkey pour injecter des scripts? addons.mozilla.org/en-us/firefox/addon/greasemonkey
  • Yap, vous pouvez le faire par votre propre extension ou GreaseMonkey.
  • Si vous n'êtes pas à l'aide d'un affichage physique et d'utiliser quelque chose comme PhantomJS, vous pouvez obtenir le DOM de la page cible. Ensuite, vous pouvez parcourir le DOM, d'injecter votre script et ajouter un onLoad déclencheur pour exécuter le script au chargement de la page. C'est l'un des moyens les plus directs comme je vois qu'il se passe.
InformationsquelleAutor Alex | 2015-07-11