Maison  >  Article  >  développement back-end  >  Comment exécuter du code JavaScript dans Selenium à l’aide de Python ?

Comment exécuter du code JavaScript dans Selenium à l’aide de Python ?

Susan Sarandon
Susan Sarandonoriginal
2024-11-03 18:15:29862parcourir

How to Execute JavaScript Code in Selenium Using Python?

Exécution de JavaScript à l'aide de Selenium en Python

Dans l'extrait de code fourni, l'objectif est d'exécuter un extrait de JavaScript spécifique à l'aide de Selenium en Python. L'extrait de code vise à automatiser un flux de travail en interagissant avec une application Web. Cependant, la tentative d'exécution de JavaScript à l'aide de Selenium.GetEval échoue avec une AttributeError.

Solution :

La méthode correcte pour exécuter JavaScript dans Selenium à l'aide de Python est browser.execute_script (). Pour résoudre le problème, remplacez selenium.GetEval() par browser.execute_script().

Code révisé :

<code class="python"># Import necessary modules
from selenium import webdriver
from selenium.webdriver.common.keys import Keys
import time

# Get user inputs
patch = input("Enter patch number\n")
rel = input("Enter release\n")
plat = input("Enter port\n")

# Launch Firefox browser
browser = webdriver.Firefox()

# Navigate to the target web page
browser.get("xxxxxxxxxxxxxxxxx")

# Find and populate various input fields
pdtfamily = browser.find_element_by_id("prodFamilyID")
pdtfamily.send_keys("Database & 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 the desired JavaScript code
browser.execute_script("submitForm('patchCacheAdd',1,{'event':'ok'});return false;")

# Close the browser
browser.close()</code>

En utilisant browser.execute_script(), le code JavaScript "submitForm('patchCacheAdd',1,{'event':'ok'});return false;" peut être exécuté avec succès dans le script Selenium écrit en Python.

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