Selenium向iframe富文本框输入内容过程图解


Posted in Python onApril 10, 2020

前言

在使用Selenium测试一些CMS后台系统时,有时会遇到一些富文本框,如下图所示:
Selenium向iframe富文本框输入内容过程图解

整个富文本编辑器是通过iframe嵌入到网页中的,手动尝试输入内容,发现内容是输入到iframe页面的body中的,

这种富文本框怎么输入呢?

我们也可以直接在body的源码上点击右键选择Edit HTML,输入相应的html代码,达到向富文本框输入的目的,如下下图:
Selenium向iframe富文本框输入内容过程图解

以下是使用Selenium的操作方法

只输入纯文本

如果只输入不带格式的纯文本,可以先切换到这个iframe,然后定位到body,send_keys相应的文本即可,代码如下:

from selenium import webdriver
dr = webdriver.Chrome()
dr.get('http://www.vemmis.com/bjq/index.html')
dr.switch_to.frame('ueditor_0')
dr.find_element('tag name', 'body').send_keys('hello')

运行完,显示如下:
Selenium向iframe富文本框输入内容过程图解

通过JS注入HTML代码

如果想输入带html格式的文本可以通过js注入,代码如下:

from selenium import webdriver
dr = webdriver.Chrome()
dr.get('http://www.vemmis.com/bjq/index.html')
js = "document.querySelector('#ueditor_0').contentDocument.querySelector('body').innerHTML='<h1>Hello</h1>'"
dr.execute_script(js)

运行完效果如下

Selenium向iframe富文本框输入内容过程图解

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
以Flask为例讲解Python的框架的使用方法
Apr 29 Python
星球大战与Python之间的那些事
Jan 07 Python
python虚拟环境迁移方法
Jan 03 Python
python 实现图片旋转 上下左右 180度旋转的示例
Jan 24 Python
Python实现KNN(K-近邻)算法的示例代码
Mar 05 Python
利用Python进行图像的加法,图像混合(附代码)
Jul 14 Python
vscode 配置 python3开发环境的方法
Sep 19 Python
基于python 将列表作为参数传入函数时的测试与理解
Jun 05 Python
Django配置Bootstrap, js实现过程详解
Oct 13 Python
Jupyter Notebook添加代码自动补全功能的实现
Jan 07 Python
Flask处理Web表单的实现方法
Jan 31 Python
python向xls写入数据(包括合并,边框,对齐,列宽)
Feb 02 Python
jupyter notebook 多环境conda kernel配置方式
Apr 10 #Python
OpenCV 表盘指针自动读数的示例代码
Apr 10 #Python
Python装饰器的应用场景代码总结
Apr 10 #Python
在Python中使用K-Means聚类和PCA主成分分析进行图像压缩
Apr 10 #Python
jupyter notebook 增加kernel教程
Apr 10 #Python
Python3操作YAML文件格式方法解析
Apr 10 #Python
Jupyter Notebook远程登录及密码设置操作
Apr 10 #Python
You might like
咖啡因含量是由谁决定的?低因咖啡怎么来?低因咖啡适合什么人喝
2021/03/06 新手入门
php 需要掌握的东西 不做浮躁的人
2009/12/28 PHP
PHP错误和异长常处理总结
2014/03/06 PHP
php获取、检查类名、函数名、方法名的函数方法
2015/06/25 PHP
高质量PHP代码的50个实用技巧必备(下)
2016/01/22 PHP
PHP实现的多维数组排序算法分析
2018/02/10 PHP
Laravel 读取 config 下的数据方法
2019/10/13 PHP
JS 退出系统并跳转到登录界面的实现代码
2013/06/29 Javascript
再探JavaScript作用域
2014/09/24 Javascript
基于NodeJS的前后端分离的思考与实践(二)模版探索
2014/09/26 NodeJs
判断浏览器的内核及版本号方法汇总
2015/01/05 Javascript
Javascript中的Callback方法浅析
2015/03/15 Javascript
jQuery插件支持同一页面被多次调用
2016/02/14 Javascript
简单谈谈javascript中this的隐式绑定
2016/02/22 Javascript
node.js实现博客小爬虫的实例代码
2016/10/08 Javascript
动态加载JavaScript文件的3种方式
2018/05/05 Javascript
微信小程序自定义select下拉选项框组件的实现代码
2018/08/28 Javascript
Vue 使用beforeEach实现登录状态检查功能
2019/10/31 Javascript
vue点击页面空白处实现保存功能
2019/11/06 Javascript
深入理解webpack process.env.NODE_ENV配置
2020/02/23 Javascript
怎样使用Python脚本日志功能
2016/08/14 Python
Python OpenCV处理图像之图像直方图和反向投影
2018/07/10 Python
浅谈python中str字符串和unicode对象字符串的拼接问题
2018/12/04 Python
Python3模拟curl发送post请求操作示例
2019/05/03 Python
24式加速你的Python(小结)
2019/06/13 Python
Python3中FuzzyWuzzy库实例用法
2020/11/18 Python
台湾森森购物网:U-mall
2017/10/16 全球购物
寻找完美的房车租赁:RVShare
2019/02/23 全球购物
美津浓巴西官方网站:Mizuno巴西
2019/07/24 全球购物
医科大学生的自我评价
2013/12/04 职场文书
岗位竞聘书范文
2014/03/31 职场文书
小班幼儿评语大全
2014/04/30 职场文书
汽车服务工程专业自荐信
2014/09/02 职场文书
企业年检委托书范本
2014/10/14 职场文书
2015年毕业生实习评语
2015/03/25 职场文书
超市主管竞聘书
2015/09/15 职场文书