【发布时间】:2019-02-08 19:31:10
【问题描述】:
有没有办法在 Python 中将 unicode 表情符号转换为适当的 ascii 表情符号?我知道emoji library 可以用来将unicode emojis 转换成类似:crying_face: 的东西。但我需要将其转换为 :'(
有没有一种优雅的方法可以做到这一点,而无需手动翻译所有可能的表情符号?另一种选择是将 ascii 表情符号也转换为它们的文本表示,即 :'( 应该变成 :crying_face:.
我的中间目标是找到一种将 ascii 和 unicode 表情符号转换为通用表示的方法。我的最终目标是将表情符号(无论是 unicode 还是 ascii)替换为它们所代表的情感(如果它们不代表情感,则删除它们)
【问题讨论】:
-
ASCII 表示会不会很漂亮...基于意见?什么会 ????变得?我担心你必须自己定义一个翻译表(即
dict)。您可以使用unicodedata.name('????')获取名称。 -
对于我的用例,只转换传递情感的表情并丢弃所有其他表情就足够了。 unicodedata.name 是一个很好的起点。也许我可以在这给我的描述中搜索一些表示情绪的关键字(如“微笑”或“悲伤”)
-
刚刚发现
unicodedata.name(emoji_char)基本返回和emoji.demojize(emoji_char)一样,只是格式不同而已。 unicodedata 返回不带下划线的大写字母,emoji 返回 :small_letters_with_underscores: 但文字基本相同。
标签: python unicode nlp emoji emoticons