首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Selenium Chrome驱动程序(Python):发送表情符号

问Selenium Chrome驱动程序(Python):发送表情符号
EN

Stack Overflow用户
提问于 2020-10-20 01:49:21
回答 1查看 415关注 0票数 0

当我尝试用python和Selenium Chrome驱动发送一个表情符号时,出现了以下错误:

代码语言:javascript
复制
selenium.common.exceptions.WebDriverException: Message: unknown error: ChromeDriver only supports characters in the BMP


(Session info: chrome=86.0.4240.75)

我已经研究了这个话题一段时间,并在@GalBracha的C# in another Question中找到了以下解决方法。

由于我根本不了解C#,也不太熟悉Selenium,所以我想问一下,是否有人知道Python语言中类似的解决方案。

谢谢

EN

回答 1

Stack Overflow用户

发布于 2020-10-20 02:19:47

我在这里以Google Images为例。您可以将emoji替换为所需的表情符号unicode。你可以找到代码here

代码语言:javascript
复制
from selenium import webdriver
from selenium.webdriver.common.keys import Keys

browser = webdriver.Chrome()
browser.get('https://images.google.com/')

search = browser.find_element_by_xpath('/html/body/div[2]/div[2]/div[2]/form/div[2]/div[1]/div[1]/div/div[2]/input') 
JS_ADD_TEXT_TO_INPUT = """
  var elm = arguments[0], txt = arguments[1];
  elm.value += txt;
  elm.dispatchEvent(new Event('change'));
  """

emoji = u'\U0001F600'

browser.execute_script(JS_ADD_TEXT_TO_INPUT, search, emoji)

unicode看起来像lile U+1F603。你所需要做的就是把'+‘替换成'000’,再把'U‘替换成\U000F603

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/64432687

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档