python selenium 給textarea賦值


具體查找資料,通過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')
 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM