mirror of
https://github.com/zhenxun-org/zhenxun_bot.git
synced 2026-10-14 16:49:59 +08:00
first_commit .gitignore
This commit is contained in:
@@ -0,0 +1,37 @@
|
||||
from .qiu_translation import qiu_qiu_word_translation, qiu_qiu_phrase_translation
|
||||
from nonebot.adapters.cqhttp import Bot, MessageEvent
|
||||
from nonebot.typing import T_State
|
||||
from nonebot import on_command
|
||||
from util.utils import get_message_text
|
||||
from services.log import logger
|
||||
|
||||
|
||||
qiuqiu = on_command("丘丘语翻译", aliases={"丘丘一下", "丘丘翻译"}, priority=5, block=True)
|
||||
|
||||
suffix = "\n※ 只能从丘丘语翻译为中文,不能反向翻译\n" \
|
||||
"※ 注意空格,不要加入任何标点符号\n" \
|
||||
"※ 翻译数据来源于 米游社论坛"
|
||||
|
||||
|
||||
@qiuqiu.handle()
|
||||
async def _(bot: Bot, event: MessageEvent, state: T_State):
|
||||
txt = get_message_text(event.json()).lower()
|
||||
if txt == "":
|
||||
return
|
||||
mes = qiu_qiu_phrase_translation(txt)
|
||||
if not mes:
|
||||
mes = qiu_qiu_word_translation(txt)
|
||||
mes += suffix
|
||||
# print(mes)
|
||||
await qiuqiu.send(mes, at_sender=True)
|
||||
logger.info(
|
||||
f"(USER {event.user_id}, GROUP {event.group_id if event.message_type != 'private' else 'private'})"
|
||||
f" 发送丘丘翻译:" + txt)
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
Binary file not shown.
Binary file not shown.
@@ -0,0 +1,127 @@
|
||||
{
|
||||
"word": {
|
||||
|
||||
"a": "啊",
|
||||
|
||||
"beru": "做",
|
||||
"biadam": "找死啊",
|
||||
"biat": "暴揍",
|
||||
"buka": "肚子",
|
||||
|
||||
"celi": "元素",
|
||||
|
||||
"dada": "厉害",
|
||||
"dala": "什么",
|
||||
"domu": "跳舞",
|
||||
|
||||
"eleka": "此时此刻",
|
||||
|
||||
"guru": "咕",
|
||||
"gusha": "草",
|
||||
|
||||
"ika": "敌人",
|
||||
|
||||
"kundela": "活着",
|
||||
"kuzi": "强大",
|
||||
"kucha": "吃草",
|
||||
|
||||
"la": "啦~",
|
||||
"lata": "水元素",
|
||||
|
||||
"mani": "给予",
|
||||
"mi": "我",
|
||||
"mimi": "我们",
|
||||
"mita": "肉类",
|
||||
"mosi": "吃",
|
||||
"movo": "带来",
|
||||
"muhe": "胜利",
|
||||
|
||||
"ni": "风",
|
||||
"nini": "风暴",
|
||||
"nunu": "睡觉",
|
||||
"nye": "不",
|
||||
|
||||
"odomu": "朋友",
|
||||
"olah": "你好",
|
||||
|
||||
"plata": "盾牌",
|
||||
"pupu": "噗噗",
|
||||
|
||||
"sada": "唱歌",
|
||||
"shato": "伴随",
|
||||
"si": "什么",
|
||||
|
||||
"tomo": "感激",
|
||||
"todo": "放心",
|
||||
"tiga": "矿石",
|
||||
|
||||
"upa": "聚集",
|
||||
"unu": "乌努",
|
||||
|
||||
"valo": "谢谢你",
|
||||
"vin": "酒",
|
||||
|
||||
"ya": "人",
|
||||
"yaya": "人们",
|
||||
"ye": "家伙",
|
||||
"yeye": "这些家伙",
|
||||
"yo": "你",
|
||||
"yoyo": "你们",
|
||||
|
||||
"zido": "杀死"
|
||||
|
||||
},
|
||||
"phrase": {
|
||||
"beru si": "做什么",
|
||||
"biadam": "可恶啊,找死啊,愤怒语气",
|
||||
"biat": "打爆,暴揍;可恶的",
|
||||
|
||||
"dada": " 极好的,厉害的",
|
||||
"dala": "表示疑问,不明白的集合,翻译为哪个,什么",
|
||||
|
||||
"guru-guru": "拟声词,形容肚子咕咕叫的声音,饥饿",
|
||||
"guru guru": "拟声词,形容肚子咕咕叫的声音,饥饿",
|
||||
"gusha": "植物类食物,不怎么好的,难过的",
|
||||
|
||||
"kucha pupu": "拟声词,吃草时候的拟声词,咯吱噗噗,形容吃草吃得香,贬义",
|
||||
|
||||
"mita": "肉类,好的,好东西,有时代丘丘人,丘丘人部落,好肉族",
|
||||
"mosi mita": "吃肉,表示开心",
|
||||
"mosi gusha": "吃草,表示难过",
|
||||
"movo": "带来,搬运;可引申为收获,丰收",
|
||||
"muhe": "胜利,战胜;成功的",
|
||||
|
||||
"nini": "大量风元素,风暴,狂风",
|
||||
"nye": "表示否定,没有了,不是",
|
||||
|
||||
"pupu":"拟声词,噗噗,表示嘲讽",
|
||||
|
||||
"sada": "唱歌,歌颂",
|
||||
"shato": "乘着,伴随着",
|
||||
|
||||
"upa": "凝聚,聚集,集合;聚落,部落",
|
||||
"unu": "乌努,丘丘人所崇拜的神灵",
|
||||
|
||||
"valo": "谢谢你,不客气/再见",
|
||||
"vin": "酒的,喝酒有关的,酒桶盖子",
|
||||
|
||||
"ya": "特指人类,一个人类",
|
||||
"yaya": "人类的复数 ,大群人类",
|
||||
"ye": "你这个家伙,蔑称;或用于地位高者对地位低者的称呼",
|
||||
"yeye": "你们这些家伙,蔑称,ye的复数",
|
||||
"yo": "你,友善称呼",
|
||||
"yoyo": "你们,yo的复数,友善称呼ye",
|
||||
|
||||
|
||||
|
||||
"nye mita da ye mosi zido": "再见,一路平安",
|
||||
"vin plata dada": "你的酒桶盾牌真不错",
|
||||
"kucha pupu gucha ye": "你咯吱噗噗的吃草的样子真的好搞笑",
|
||||
"mani nini biaodomu": "愿风暴给予你死亡",
|
||||
"celi dada mimi nunu": "赞美元素,我们睡觉吧",
|
||||
"muhe ye": "你们是不可战胜的",
|
||||
"ye dada": "你们可真棒",
|
||||
"ye yika": "你们是敌人",
|
||||
"nini zido": "愿风暴杀死你"
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,71 @@
|
||||
import json
|
||||
import os
|
||||
|
||||
FILE_PATH = os.path.dirname(__file__)
|
||||
|
||||
QIU_QIU_WORD = {}
|
||||
QIU_QIU_PHRASE = {}
|
||||
|
||||
with open(os.path.join(FILE_PATH, 'qiu_qiu_dictionary.json'), 'r', encoding='UTF-8') as f:
|
||||
data = json.load(f)
|
||||
QIU_QIU_WORD = data["word"]
|
||||
QIU_QIU_PHRASE = data["phrase"]
|
||||
|
||||
|
||||
def compare_words(word):
|
||||
# 比对word库是否有匹配的单词,有的话返回翻译,没有返回原词
|
||||
if word in QIU_QIU_WORD:
|
||||
return QIU_QIU_WORD[word]
|
||||
|
||||
return word
|
||||
|
||||
|
||||
def compare_phrase(phrase):
|
||||
# 比对phrase库是否有匹配的单词,有的话返回翻译,没有的话匹配word库,都没有返回原词
|
||||
if phrase in QIU_QIU_PHRASE:
|
||||
return QIU_QIU_PHRASE[phrase]
|
||||
if phrase in QIU_QIU_WORD:
|
||||
return QIU_QIU_WORD[phrase]
|
||||
|
||||
return phrase
|
||||
|
||||
|
||||
def qiu_qiu_word_translation(txt: str):
|
||||
# 对语句按空格分隔替换单词翻译
|
||||
txt_list = txt.split(" ")
|
||||
mes = "你查询的的丘丘语意思为:\n"
|
||||
|
||||
for word in txt_list:
|
||||
tra_word = compare_words(word)
|
||||
|
||||
if tra_word == word:
|
||||
# 如果是原词表示没有翻译,前后加空格接回语句里
|
||||
if not mes[-1] == " ":
|
||||
mes += " "
|
||||
mes += tra_word
|
||||
mes += " "
|
||||
else:
|
||||
mes += tra_word
|
||||
mes += "\n"
|
||||
return mes
|
||||
|
||||
|
||||
def qiu_qiu_phrase_translation(phrase):
|
||||
# 语句翻译,先看phrase库是不是有匹配的语句
|
||||
# 没有的话把单词拆开返回单词的意思
|
||||
tra_phrase = compare_phrase(phrase)
|
||||
if tra_phrase != phrase:
|
||||
return f"\n翻译丘丘语意思为:\n【{tra_phrase}】\n"
|
||||
|
||||
txt_list = phrase.split(" ")
|
||||
mes = "没有查到这句丘丘语,以下是单词的翻译\n"
|
||||
for word in txt_list:
|
||||
if word == " ":
|
||||
continue
|
||||
tra_word = compare_phrase(word)
|
||||
if tra_word == word:
|
||||
mes += f"{word} : 没有这个词的翻译\n"
|
||||
else:
|
||||
mes += f"{word} : {tra_word}\n"
|
||||
|
||||
return mes
|
||||
Reference in New Issue
Block a user