使用 Selenium 发送表情符号 Python
Sending emojis with Selenium Python
我知道已经有人问过这样的问题,但我还没有找到真正有效的明确答案。
我想在社交媒体上自动发送私信,但我想在其中添加表情符号。问题是我不明白人们是如何发送它的,因为它是 Chromedriver 不允许的(据说只支持 BMP)。
确实,我找到了在输入中添加文本的解决方案,如下所示:
JS_ADD_TEXT_TO_INPUT = """
var elm = arguments[0], txt = arguments[1];
elm.value += txt;
elm.dispatchEvent(new Event('change'));
"""
在我的例子中,我想要添加表情符号的地方并不总是一个输入(它可以是一个跨度或一个 div)。有人知道什么代码可以帮助我做到这一点吗?提前致谢!
如果您尝试将表情符号添加到非输入字段,您可以直接设置 textContent
。
script = """document.querySelector('%s').textContent='%s';""" % (
css_selector,
value,
)
driver.execute_script(script)
在输入选择器之前,请务必转义任何引号和特殊字符。例如。 import re; re.escape(css_selector)
这将使您可以将网页元素上的任何文本设置为任何内容,如果您没有在输入字段中键入内容,则包括表情符号。
我知道已经有人问过这样的问题,但我还没有找到真正有效的明确答案。
我想在社交媒体上自动发送私信,但我想在其中添加表情符号。问题是我不明白人们是如何发送它的,因为它是 Chromedriver 不允许的(据说只支持 BMP)。
确实,我找到了在输入中添加文本的解决方案,如下所示:
JS_ADD_TEXT_TO_INPUT = """
var elm = arguments[0], txt = arguments[1];
elm.value += txt;
elm.dispatchEvent(new Event('change'));
"""
在我的例子中,我想要添加表情符号的地方并不总是一个输入(它可以是一个跨度或一个 div)。有人知道什么代码可以帮助我做到这一点吗?提前致谢!
如果您尝试将表情符号添加到非输入字段,您可以直接设置 textContent
。
script = """document.querySelector('%s').textContent='%s';""" % (
css_selector,
value,
)
driver.execute_script(script)
在输入选择器之前,请务必转义任何引号和特殊字符。例如。 import re; re.escape(css_selector)
这将使您可以将网页元素上的任何文本设置为任何内容,如果您没有在输入字段中键入内容,则包括表情符号。