summaryrefslogtreecommitdiff
path: root/ATRI/plugins/onMessage.py
diff options
context:
space:
mode:
Diffstat (limited to 'ATRI/plugins/onMessage.py')
-rw-r--r--ATRI/plugins/onMessage.py125
1 files changed, 0 insertions, 125 deletions
diff --git a/ATRI/plugins/onMessage.py b/ATRI/plugins/onMessage.py
deleted file mode 100644
index 0ab8f88..0000000
--- a/ATRI/plugins/onMessage.py
+++ /dev/null
@@ -1,125 +0,0 @@
-import re
-import os
-import json
-import nonebot
-from pathlib import Path
-from random import randint, choice
-
-from ATRI.modules.error import errorBack
-from ATRI.modules.time import sleepTime
-from ATRI.modules.funcControl import checkSwitch, checkNoob
-from ATRI.plugins.SauceNAO import API_KEY, SauceNAO
-
-
-bot = nonebot.get_bot()
-
-
[email protected]_message("group")
-async def _(context):
- group = context["group_id"]
- user = context["user_id"]
- if sleepTime():
- pass
- else:
- if checkNoob(user, group):
- msg = str(context["message"])
- print(msg)
- if "搜图" in msg or "识图" in msg:
- if checkSwitch("saucenao_search", group):
- try:
- pattern = r"CQ:reply,id=(.*?)]"
- info = re.findall(pattern, msg)
- msgID = info[0]
- print(msgID)
- except:
- print('ERROR-onMessage')
- return
-
- try:
- with open(Path('.') / 'ATRI' / 'data' / 'groupData' / f'{group}' / 'msgData.json', 'r') as f:
- data = json.load(f)
- except:
- data = {}
-
- if msgID in data.keys():
- msgR = data[f"{msgID}"]["msg"]
-
- pattern = r"url=(.*?)]"
- info = re.findall(pattern, msgR)
- picURL = info[0]
-
- try:
- task = SauceNAO(api_key=API_KEY)
- data = task.search(url=picURL)
- msg0 = ''
- except:
- await bot.send_msg(group_id = group, message = errorBack('请求数据失败')) # type: ignore
- return
-
- print(data)
- try:
- data = json.loads(data)['results'][0]
- title = data['data']['title']
- pixiv_id = data['data']['pixiv_id']
- member_name = data['data']['member_name']
- member_id = data['data']['member_id']
- similarity = data['header']['similarity']
- mini_url = data['header']['thumbnail']
- msg0 = f'[CQ:at,qq={user}]'
- msg0 += f'SauceNAO结果:'
- msg0 += f'[CQ:image,file={mini_url}]\n'
- msg0 += f'相似度:{similarity}%\n'
- msg0 += f'标题:{title}\n'
- msg0 += f'插画ID:{pixiv_id}\n'
- msg0 += f'画师:{member_name}\n'
- msg0 += f'画师ID:{member_id}\n'
- msg0 += f'直链:https://pixiv.cat/{pixiv_id}.jpg'
- except:
- await bot.send_msg(group_id = group, message = errorBack('处理数据失败')) # type: ignore
- return
- if msg0:
- if float(similarity) > 70:
- await bot.send_msg(group_id = group, message = msg0) # type: ignore
- else:
- await bot.send_msg(group_id = group, message = 'ATRI无法找到相似的图呢...') # type: ignore
-
- else:
- await bot.send_msg(group_id = group, message = '该功能已关闭...') # type: ignore
-
- else:
- try:
- with open(Path('.') / 'ATRI' / 'plugins' / 'LearnRepo' / 'LearnRepo.json', 'r') as f:
- data = json.load(f)
- except:
- data = {}
-
- if str(msg) in data.keys():
- lt = data[f"{msg}"]
- msg = lt[0]
- prob = int(lt[1])
- res = randint(1,prob)
- if res == 1:
- await bot.send_msg(
- group_id = group,
- message = msg
- ) # type: ignore
-
[email protected]_message('group')
-async def _(context):
- user = context["user_id"]
- group = context["group_id"]
- if checkNoob(user, group):
- if sleepTime():
- pass
- else:
- if randint(1,20) == 4:
- img = choice(
- [
- '11.jpg', '12.jpg', '23.jpg'
- ]
- )
- img = os.path.abspath(Path('.') / 'ATRI' / 'data' / 'emoji' / 'senren' / f'{img}')
- await bot.send_msg(message = f'[CQ:image,file=file:///{img}]', auto_escape = False) # type: ignore
-
- else:
- pass \ No newline at end of file