>  기사  >  백엔드 개발  >  Python을 사용하여 Selenium에서 JavaScript 코드를 실행하는 방법은 무엇입니까?

Python을 사용하여 Selenium에서 JavaScript 코드를 실행하는 방법은 무엇입니까?

Susan Sarandon
Susan Sarandon원래의
2024-11-03 18:15:29868검색

How to Execute JavaScript Code in Selenium Using Python?

Python에서 Selenium을 사용하여 JavaScript 실행

제공된 코드 스니펫의 목표는 Python에서 Selenium을 사용하여 특정 JavaScript 스니펫을 실행하는 것입니다. 코드 조각은 웹 애플리케이션과 상호 작용하여 워크플로를 자동화하는 것을 목표로 합니다. 그러나 selenium.GetEval을 사용하여 JavaScript를 실행하려는 시도는 AttributeError와 함께 실패합니다.

해결 방법:

Python을 사용하여 Selenium에서 JavaScript를 실행하는 올바른 방법은 browser.execute_script입니다. (). 문제를 해결하려면 selenium.GetEval()을 browser.execute_script()로 바꾸십시오.

수정된 코드:

<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>

browser.execute_script()를 사용하여, JavaScript 코드 "submitForm('patchCacheAdd',1,{'event':'ok'});return false;" Python으로 작성된 Selenium 스크립트 내에서 성공적으로 실행될 수 있습니다.

위 내용은 Python을 사용하여 Selenium에서 JavaScript 코드를 실행하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.