如何在Python selenium中使用JavascriptExecutor而不是send_keys

问题描述 投票:1回答:1

我在python中编写了一个脚本,使用send_key在这个webpage上的textarea中键入一些文本。但是,使用send_key真的很慢,因为我的文本非常粗糙。

from selenium import webdriver

text = "gckugcgaygartty"
link_url ="http://www.bioinformatics.org/sms2/translate.html"

driver = webdriver.Chrome('chromedriver', chrome_options=options)
driver.get(link_url)

driver.find_element_by_tag_name("textarea").clear()
driver.find_element_by_tag_name("textarea").send_keys("gckugcgaygartty")

然后我尝试用execute_script()替换send_keys,如下所示,但它不起作用(没有错误,但网页上没有任何改变),有人可以给我一些建议吗?

driver.execute_script("document.getElementById('main_form').getElementsByTagName('textarea')[0].click()")



driver.execute_script("document.getElementById('main_form').getElementsByTagName('textarea')[0].setAttribute('value', 'gckugcgaygartty' )")
python selenium-webdriver textarea sendkeys
1个回答
0
投票

修改:使用value属性更改了setAttribute函数

使用以下代码:

driver.execute_script("document.getElementsByTagName('textarea')[0].value='your_lengthy_data'")

OR

driver.execute_script("document.getElementById('main_form').getElementsByTagName('textarea')[0].value='your_lengthy_data'")
© www.soinside.com 2019 - 2024. All rights reserved.