使用硒的send_keys()发送表情符号

时间:2018-08-06 11:09:40

标签: python selenium

我想发送带有硒的:heart:的{​​{1}}表情符号

send_keys()

但是,这不起作用,并发送字符串':heart:'。

能否请您提出正确的做法?

4 个答案:

答案 0 :(得分:2)

您不能直接这样做。您需要通过javascript执行此操作。 正确格式化Javascript之后,您需要通知侦听器。

在此之前,您需要找到要使用的任何表情符号的unicode。 要获取任何表情符号的代码点,可以使用以下网站: https://emojipedia.org/ 搜索任何表情符号,然后在页面底部找到代码点。

要将JavaScript的codepoint转换为unicode,请使用以下网站: https://r12a.github.io/app-conversion/

键入代码点,然后将值复制到它的javascript框中。 有了它后,请按如下所示使用JavaScript:

JS_ADD_TEXT_TO_INPUT = """
  var elm = arguments[0], txt = arguments[1];
  elm.value += txt;
  elm.dispatchEvent(new Event('change'));
  """

elem = driver.find_element_by_id('<Id of your webelement>')
text = u'\u2764'

driver.execute_script(JS_ADD_TEXT_TO_INPUT, elem, text)

2764是心脏表情符号的unicode。 希望这对您想要插入到whatsapp的任何表情符号都有帮助!

编辑:有关更复杂的图释: 您需要添加多个unicode,例如 家庭表情符号: \ uD83D \ uDC6A

答案 1 :(得分:2)

伙计们。 我发现了一种使用Selenium将表情符号添加到whatsApp的非常简单但功能强大的方法

Message_box.send_keys(':emoji' u'\ue007') # You just have to enter the code cording to the next page

https://gist.github.com/hkan/264423ab0ee720efb55e05a0f5f90887

答案 2 :(得分:0)

好吧

这是一种解决方法!希望它能起作用!

text_element = driver_trader.find_element_by_xpath('xpath')
text = '⚪??'

driver.execute_script("arguments[0].innerHTML = '{}'".format(text),text_element)
text_element .send_keys('.')
text_element .send_keys(Keys.BACKSPACE)

答案 3 :(得分:0)

将表情符号复制到剪贴板并粘贴到输入元素中也可以。