Python+selenium输入框无法在Chrome输入表情的解决方法

使用Python Selenium进行自动化测试时,在Chrome输入框输入表情符号遇到困难。由于Selenium的send.keys方法不支持直接输入表情,尝试Unicode编码也失败。通过JavaScript执行注入解决了这个问题,实现表情成功输入。

Python+selenium输入框无法在Chrome输入表情的解决方法

忙活了大半天!在项目中遇到文本输入框验证时,需要输入表情符号,于是动手去尝试,发现python默认支持utf-8,直接输入表情符号“😊”是无法被正确转义的,原因是Selenium的send.keys方法不支持。

于是尝试找到表情符号的转义编码:大致像:
“u’\U0001f436’ + u’\u200D’ + u’\U0001f431’ + u’\u200D’ + u’\U0001f42d’”
这种Unicode编码格式。

直接放进send.keys中也不行:在这里插入图片描述
会报错:在这里插入图片描述
查明原因是因为谷歌浏览器驱动暂时不支持这种格式的输入,但是火狐驱动也就是Firefoxdriver应该可以支持,我没有去尝试,感觉比较麻烦,于是继续尝试第二种方案,就是利用JavaScript。

下面贴上部分代码:

JS_ADD_TEXT_TO_INPUT = """
  var elm = arguments[0], txt 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值