Maison >développement back-end >Tutoriel Python >Comment puis-je exécuter des extraits de code JavaScript dans Selenium à l'aide de Python ?

Comment puis-je exécuter des extraits de code JavaScript dans Selenium à l'aide de Python ?

Susan Sarandon
Susan Sarandonoriginal
2024-10-30 17:50:03990parcourir

How can I Execute JavaScript Snippets in Selenium Using Python?

Exécution d'extraits de code JavaScript dans Selenium à l'aide de Python

Dans l'extrait de code que vous avez fourni, vous avez rencontré des difficultés pour exécuter un extrait de code JavaScript dans le contexte de votre Selenium scénario. Initialement, vous avez tenté d'utiliser la syntaxe "selenium.GetEval", mais cela a entraîné une AttributeError.

Pour résoudre ce problème, vous devez plutôt utiliser la méthode "browser.execute_script". Cette méthode vous permet d'évaluer du code JavaScript arbitraire au sein du DOM de la page actuelle.

Voici une version modifiée de votre code qui inclut la méthode "browser.execute_script" :

<code class="python">from selenium import webdriver
import selenium
from selenium.common.exceptions import NoSuchElementException
from selenium.webdriver.common.keys import Keys
import time

patch = raw_input("Enter patch number\n")
rel = raw_input("Enter release\n")
plat = raw_input("Enter port\n")

browser = webdriver.Firefox()

browser.get("xxxxxxxxxxxxxxxxx")

pdtfamily = browser.find_element_by_id("prodFamilyID")
pdtfamily.send_keys("Database &amp; Tools" + Keys.TAB)
time.sleep(5)

pdt = browser.find_element_by_id("productID")
pdt.send_keys("Intelligent Agent" + Keys.TAB)
time.sleep(5)

pdt1 = browser.find_element_by_id("patchCacheChkBxID")
pdt1.send_keys(Keys.SPACE)
time.sleep(5)

pdt7 =  browser.find_element_by_id("M__Idf")
pdt7.send_keys(plat)

pdt8 =  browser.find_element_by_id("M__Idg")
pdt8.send_keys("American English")

# Execute JavaScript snippet using browser.execute_script
browser.execute_script("submitForm('patchCacheAdd',1,{'event':'ok'});return false")

browser.close()</code>

Par en utilisant la méthode "browser.execute_script", vous pouvez maintenant exécuter l'extrait JavaScript souhaité dans votre script Selenium.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn