一直很想给 Twikoo 加上 B 站小黄脸表情,但 Twikoo-magic 项目没有提供,需要自己准备相应的 owo.json 和 CDN。后者挺容易,从 Bili Emoji 项目下载上传即可,但前者需要自己根据表情图片写 json,这必定需要自动化生成,不会的我,只好去找 ChatGPT 帮忙啦。

准备

  • 环境:Python
  • 设备:任意(我只测试了 Windows)

互联网上查找下载 Github 仓库指定目录的工具,下载好 Bili Emoji 的小黄脸文件夹到本地,保留好你想要的表情文件。

代码

表情目录内编辑 owo.py

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
import os
import json

def is_image_file(filename):
# 判断文件是否为图片文件的函数
return filename.endswith(".jpg") or filename.endswith(".jpeg") or filename.endswith(".png") or filename.endswith(".bmp")

def generate_owo_json():
data = []
filenames = os.listdir(".")
filenames.sort()
for i, filename in enumerate(filenames):
if os.path.isfile(filename) and is_image_file(filename):
item = {"text": "biliface-" + str(i + 1), "icon": filename}
data.append(item)
with open("owo.json", "w", encoding="utf-8") as f:
json.dump(data, f, ensure_ascii=False)

generate_owo_json()

保存好进入当前目录终端,python3 owo.py,即可在目录下生成 owo.json,"text" 字段是编号,"icon" 字段是文件名。

修缮

打开 IDE,如 VS Code,用查找替换工具给文件名前后增加内容,使其成为链接标签,随后在整个数组前后增加块和内容,插入原有 owo.json 中,即可实现小黄脸表情。

下面是生成好的小黄脸 owo.json 和我目前的表情 owo.json,有需要的可以自取:

贰盘

注意,如果你要把小黄脸 OwO 插在你的表情 OwO 之间,别忘记删除小黄脸 owo.json 上下两个大括号(一级块),并确保其两端有半角逗号。