首页  >  文章  >  后端开发  >  如何使用 Python 在 Selenium 中执行 JavaScript 片段?

如何使用 Python 在 Selenium 中执行 JavaScript 片段?

Susan Sarandon
Susan Sarandon原创
2024-10-30 17:50:03895浏览

How can I Execute JavaScript Snippets in Selenium Using Python?

使用 Python 在 Selenium 中执行 JavaScript 片段

在您提供的代码片段中,您在 Selenium 上下文中执行 JavaScript 片段时遇到了困难脚本。最初,您尝试使用语法“selenium.GetEval”,但这导致了 AttributeError。

要解决此问题,您应该使用“browser.execute_script”方法。此方法允许您评估当前页面 DOM 内的任意 JavaScript 代码。

这是代码的修改版本,其中包含“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>

通过使用“browser.execute_script”方法,您现在可以在 Selenium 脚本中执行所需的 JavaScript 片段。

以上是如何使用 Python 在 Selenium 中执行 JavaScript 片段?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn