如何检查和编码来自 Facebook Messenger 的输入表情符号?
Posted
技术标签:
【中文标题】如何检查和编码来自 Facebook Messenger 的输入表情符号?【英文标题】:How to check and encode input emojis from Facebook messenger? 【发布时间】:2016-10-07 14:10:16 【问题描述】:我正在用 Python 构建一个 Facebook Messenger 机器人。一切正常。但是,如果我将emojis
作为文本从 Facebook 聊天发送到 API,那么它就会出错。
这是我从 Facebook 发送 emojis
时的示例。
'message': 'mid': 'mid.1475846223244:e7eea53884', 'seq': 10863, 'text': '????????',
所以received_message = message['message']['text']
。
我想要的是每当我从 Facebook 发送(表情符号)non text message
时,我可以在将其发送到我的 API 之前对其进行扫描和编码。在问这个问题之前我已经阅读了文档,但其中大多数是来自用户的emojis
,而不是所有扫描仪并编码任何emojis
(如果我遗漏了什么,请纠正我,因为我是新手)。告诉我是否需要更新我的问题。
【问题讨论】:
你能发一个repl
你的'text'值,或者给出unicode代码点吗?
对不起,我没看清楚你的问题? “文本”值是我从 Facebook 发送的任何内容,如果“文本”不是 string
,我想将其编码为 unicode。
【参考方案1】:
您可以使用 unicode 代码点和 ASCII 表示之间的映射。在此处查看此类表:http://lolhug.com/facebook-emoticons/
官方表情表在这里:http://unicode-table.com/en/blocks/emoticons/
库Emoji 可以帮助您转换表情符号。
【讨论】:
感谢您提供有用的信息!我现在就试试! 这可能不允许您表达所有可用的 Unicode 代码点,例如所有表情符号。【参考方案2】:您应该使用相应代码点的转义版本。这是一种允许您仅使用 ASCII 字符来表示整个 Unicode 范围的技术。
EG。 Emoji ? 可以在 Java 中表示为 "\uD83D\uDCA9"
或在 Python 中表示为 u"\U0001F4A9"
。 http://www.fileformat.info/info/unicode/char/1f4a9/index.htm
注意:某些表情符号由多个代码点组成,例如标志或系列。请在此处找到 Unicode Emojis 的完整列表http://unicode.org/emoji/charts/full-emoji-list.html
【讨论】:
以上是关于如何检查和编码来自 Facebook Messenger 的输入表情符号?的主要内容,如果未能解决你的问题,请参考以下文章
如何对来自 facebook api 的图像进行 base64 编码
如何在 iOS(Objective-C)中分享到 Facebook Messenger 应用程序的链接?
如何让来自 Firebase 控制台的通知像 Facebook 和其他应用一样弹出?