python - 在 Python 中将 unicode emojis 转换为 ascii emojis
问题描述
有没有办法将 unicode 表情符号转换为 Python 中适当的 ascii 表情符号?我知道emoji 库 可以用来将 unicode emojis 转换为类似 :crying_face: 的东西。但我需要将其转换为:'(
有没有一种优雅的方法可以做到这一点,而不必手动翻译每一个可能的表情符号?另一种选择是将ascii emojis也转换为它们的文本表示,即:'(应该变成:crying_face:。
我的中间目标是找到一种将 ascii 和 unicode 表情符号转换为通用表示的方法。我的最终目标是用它们所代表的情感替换表情符号(无论是 unicode 还是 ascii)(如果它们不代表情感,则删除它们)
解决方案
我发现这些存储库有一个巨大的表情符号数据库以及一个text
属性(你需要什么):
https://github.com/alexmick/emoji-data-python
https://github.com/iamcal/emoji-data(这是原始的。python 似乎是对此的包装器)
您可以通过浏览 repos 中的示例来了解更多信息。从对于 python 版本,您可以使用官方的 unicode 名称/十六进制代码来获取EmojiChar
对象:
In [31]: grin = emoji_data_python.find_by_name("GRINNING FACE")
In [32]: grin
Out[32]:
[EmojiChar("GRINNING FACE"),
EmojiChar("GRINNING FACE WITH SMILING EYES"),
EmojiChar("GRINNING FACE WITH STAR EYES"),
EmojiChar("GRINNING FACE WITH ONE LARGE AND ONE SMALL EYE")]
In [33]: grin[0].text
Out[33]: ':D'
推荐阅读
- php - 无法使用 SIM800L+ESP32 发送大小超过 1449 个字符的 HTTP POST 有效负载
- visual-studio-code - vscode: insert constant amount of spaces instead of completing indentation
- python - How to add a delay between 2 text messages being displayed in Tkinter Python?
- reactjs - 输入组件reactjs中选择的默认值
- laravel - 通过 API 上传文件
- r - 如何在不是来自 R 中的 plot() 的图上添加刻度线
- sql - 相对于几列有条件的默认值
- nearprotocol - 我应该如何收取仓储费?
- vue.js - 如何在 vue-good-table 中进行单元格编辑?
- api - Twilio SMS - 在哪里设置选择退出的 webhook?