ホームページ  >  記事  >  バックエンド開発  >  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>

By 「browser.execute_script」メソッドを使用すると、Selenium スクリプト内で目的の JavaScript スニペットを実行できるようになります。

以上がPython を使用して Selenium で JavaScript スニペットを実行するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。