如何在python中使用selenium将整个文本发送到文本区域而不是逐行发送?

Shr*_*gam 3 python selenium webdriver python-3.x selenium-webdriver

我的代码将文本逐行输入到网页的文本区域,如何让它一次性插入整个文本,是否有解决方案?因为一行一行需要很多时间

def Translated_Content(content):

    driver= webdriver.Chrome("C:\\Users\\shricharan.arumugam\\Desktop\\PDF2txt\\chromedriver.exe")
    driver.get('https://translate.shell.com/')

    input_box = driver.find_element_by_id('translateText')
    input_box.send_keys(content)

    translate_button = driver.find_element_by_id('translate')
    translate_button.click()
    translated_text_element= driver.find_element_by_id('translatedText')
    time.sleep(4)


    translated_text=translated_text_element.get_attribute('value')

    driver.close()

    return translated_text
Run Code Online (Sandbox Code Playgroud)

yon*_*ong 6

您可以通过 JavaScript DOM API 以静默方式更改 textbox/textarea 的文本,而不是从前端 UI:

long_string= <the long string>
input_box = driver.find_element_by_id('translateText')
driver.execute_script('arguments[0].value=arguments[1]', input_box, long_string)
Run Code Online (Sandbox Code Playgroud)