Skip to content

Latest commit

 

History

History
94 lines (68 loc) · 2.04 KB

README.md

File metadata and controls

94 lines (68 loc) · 2.04 KB

nonebot-emojimix

基于nonebot-plugin-emojimix重构的emoji合成插件。

理论上适用于基于nonebot2+onebot v11运行的所有bot。

使用方法:

emoji+emoji
示例:😎+😁

image

使用前提醒:

本插件包括以下能治疗各位开发者血压低的内容:

  1. 三角稳定:
if:
    if:
        if:
            if:
                if:
                    if:
                    else:
                else:
            else:
        else:
    else:
else:
  1. 视而不见:
try:
except:
try:
except:
try:
except:
  1. 热辣炸串:
if:
elif:
elif:
elif:
elif:
else
  1. 真假李逵:
def mix(a,b):
    ......
def mix_reverse(a,b):
    ......

运行原理

根据emoji-kitchen中获取到的metadata.json进行部分数据提取+增删:

源数据很大,大约有52MB,全部加载显然不现实:

image

分析metadata.json可以得知,里面的数据由可用emoji的unicode编码+emoji合成判断组成。

image

emoji图片则遵循这么一个url规则:

https://www.gstatic.com/android/keyboard/emojikitchen/{日期}/{表情a}/{表情a}_{表情b}.png

或者

https://www.gstatic.com/android/keyboard/emojikitchen/{日期}/{表情b}/{表情a}_{表情b}.png

蒸馏原metadata.json中对我们无用的大部分数据后,我们得到一个判断是否为可用emoji的known.json,以及获取合成表情相关信息的魔改后metadata.json。

image

接着做一个对比,然后根据url规则实现就可以。