Skip to main content
 首页 » 编程设计

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

2024年11月24日35jillzhang

我用 python 编写了一个脚本,使用 send_key 在这个 webpage 的文本区域中键入一些文本。 .但是,使用 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' )") 

请您参考如下方法:

Modification : Changed setAttribute function with value property

使用以下代码:

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

或

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