1,问题背景

最近在基于selenium+python框架学习WEB自动化测试,在尝试对textarea控件直接使用send_keys()方法进行输入文本操作时,报错了,提示输入失败,界面上效果看也未能成功实现文本信息输入。


```python
#conding = utf-8
from selenium import webdriver
from selenium.webdriver.common.by import By# 1,打开网址
w = webdriver.Chrome()
w.get('https://fanyi.youdao.com') #打开有道翻译首页# 2,输入框输入内容
w.find_element(By.ID, 'inputOriginal').send_keys('世界上最好的语言')

2,问题原因

<textarea id="inputOriginal" dir="auto" class="input__original__area" placeholder="请输入你要翻译的文字或网址"></textarea>

textarea控件内设置了默认值(placeholder=“请输入你要翻译的文字或网址”),导致不能直接用send_keys()方法进行输入文本操作

3,问题解决

方法1:先清空默认值再输入文本

先使用clear()方法先清空默认文本 -> 再使用send_keys()方法进行输入文本操作。示例代码如下:

#conding = utf-8
from selenium import webdriver
from selenium.webdriver.common.by import By# 1,打开网址
w = webdriver.Chrome()
w.get('https://fanyi.youdao.com') #打开有道翻译首页# 2,输入框输入内容
e = w.find_element(By.ID, 'inputOriginal')
e.clear() #清空默认文本
e.send_keys('世界上最好的语言') #输入文本

方法2:通过执行js脚本实现文本输入

webdriver提供了execute_script()方法来执行js脚本,利用js脚本来间接实现文本输入。
写好输入文本的js语句并用变量A存储 -> 调用webdriver的execute_script()方法来执行js脚本,实现文本输入。示例代码如下:

#conding = utf-8
from selenium import webdriver
from selenium.webdriver.common.by import By# 1,打开网址
w = webdriver.Chrome()
w.get('https://fanyi.youdao.com')# 2,输入框输入内容
jsStr = "var d = document.getElementById('inputOriginal');d.value='世界上最好的语言';"
w.execute_script(jsStr)

4,运行测试

Selenium||解决给元素输入文本失败问题相关推荐

  1. selenium 中隐藏元素如何定位?

    前言 面试题:selenium 中隐藏元素如何定位?这个是很多面试官喜欢问的一个题, 如果单纯的定位的话,隐藏元素和普通不隐藏元素定位没啥区别,用正常定位方法就行了 但是吧~~~很多面试官自己都搞不清 ...

  2. 已解决selenium模块向网页input文本框输入内容失败问题

    已解决(selenium向input文本框输入内容失败问题)selenium.common.exceptions.ElementNotInteractableException: Message: e ...

  3. Firefox/Chrome下flash的wmode参数设为opaque或transparent时输入文本框中无法输入中文汉字的解决方法

    一.前言 这段时间做个项目,要涉及到flash开发.真悲催,之前没有接触过flash开发,于是找个哥们临时教了一下Adobe Flash CS5 的使用方法,感觉还蛮简单,所见即所得,和MFC下的开发 ...

  4. Firefox/Chrome下flash的wmode参数设为opaque或transparent时输入文本框中无法输入中文汉字的解决方法...

    这段时间做个项目,要涉及到flash开发.真悲催,之前没有接触过flash开发,于是找个哥们临时教了一下Adobe Flash CS5 的使用方法,感觉还蛮简单,所见即所得,和MFC下的开发有点像,渐 ...

  5. selenium查找文本_在Selenium中查找具有链接文本和部分链接文本的元素

    selenium查找文本 Selenium中CSS定位器是一个基本概念,每个旨在使用Selenium执行自动化测试的测试人员都应该意识到这一点. 在Selenium中充分使用CSS定位器可以帮助您以更 ...

  6. python元素定位input button_python+selenium 定位到元素,无法点击的解决方法

    报错 selenium.common.exceptions.WebDriverException: Message: Element is not clickable at point (234.75 ...

  7. selenium 获取不了标签文本的解决方法

    selenium 获取不了标签文本的解决方法 参考文章: (1)selenium 获取不了标签文本的解决方法 (2)https://www.cnblogs.com/ppppying/p/7755064 ...

  8. selenium:解决页面元素display:none的方法

    selenium:解决页面元素display:none的方法 参考文章: (1)selenium:解决页面元素display:none的方法 (2)https://www.cnblogs.com/im ...

  9. 使用 Powerapps 过程中解决过的问题 - 4 - 根据在搜索框中输入文本自动对数据源中不同的字段进行过滤和显示

    在"解析Power  Apps 自动生成的App - 2 - 浏览页面" 一文里, 有涉及到类似的问题.在自动生成的App 的浏览页面里,默认的为搜索框提供了下面的代码段: Ite ...

  10. python Selenium 常见操作 元素定位

    一. 定位元素方法 官网地址:http://selenium-python.readthedocs.org/locating-elements.html         这里有各种策略用于定位网页中的 ...

最新文章

  1. Sum-product Networks
  2. 发布一个实体类属性生成小工具,给开发加点料
  3. 老男孩为网友工作疑难问题解答一例
  4. filter2D函数
  5. Mahout分步式程序开发 聚类Kmeans
  6. JavaScript模块化-require.js
  7. react router v4 简介
  8. Oracle 10gR2 Psu 相关
  9. python之logging模块简单用法
  10. 网页插入网易云音乐播放器
  11. win10 安装VB6详细安装教程及其中的坑
  12. 达思SQL数据库修复软件升级至 5.0 版本(重要升级支持修复压缩格式的备份文件)
  13. 晚上几点睡才叫“熬夜”?给你“答案”,很多人都想错了
  14. 实验十三:配置STP、RSTP以及负载均衡(生成树负载均衡)
  15. [sphinx]中文语言模型训练
  16. Scratch3.0 二次开发环境部署(一)
  17. Scrapy学习第四课
  18. Nova Battles是2022年值得关注的链游
  19. 图像噪声、去噪基本方法合集(Python实现)
  20. scandir函数详解

热门文章

  1. 相机标定后得到相机视域,并根据相机视域求取摄像机位置和摄像机方位角
  2. iOS 上的FlexBox布局
  3. 用esp8266做一个网络时钟
  4. WIN10 + Ubuntu18.04 双系统安装教程(新机)
  5. WIN2000故障修复之故障恢复控制台篇
  6. postgres链接太多(sorry, too many clients already)
  7. 三天打鱼两天晒网python程序_三天打鱼两天晒网
  8. java中的switch case语句
  9. linux regulator接口驱动demo
  10. 缓解精神内耗的“马原疗法”