如何在Python硒中使用JavascriptExecutor代替send_keys

时间:2019-03-30 00:13:51

标签: python selenium-webdriver textarea sendkeys

我已经在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' )")

1 个答案:

答案 0 :(得分:0)

  

修改:更改了具有值属性的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'")