具體查找資料,通過selenium調用js代碼實現,可以傳入制表符類的空格
# python傳入的值
test_txt = '123456\t789'
# 拼接js
js = 'var txt = document.getElementById("txarea"); txt.value="'+test_txt+'";'
# 執行js代碼
driver.execute_script(js)
當需要給textarea傳入多行值時,再次用上面的方法就會報錯,具體來說只要傳入的文本帶有‘\n’就會報錯。
親自操作了js代碼發現js成功換行了。同樣的js代碼selenium調用可能會報錯,此問題在此記錄。
# selenium調用會報錯代碼
js = 'var ucode = document.getElementById("txarea_serial"); ucode.value="123\t456\n789"'
driver.execute_script(js)
經過一番頭疼后找到解決方法。只需要將\n的識別工作扔給js就行,selenium只負責傳值。
# selenium不報錯
js = 'var ucode = document.getElementById("txarea_serial"); ucode.value=arguments[0]'
driver.execute_script(js,'123\t456\n789')