zhenxun_bot/plugins/search_image/__init__.py
2021-11-23 21:44:59 +08:00

134 lines
3.9 KiB
Python
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# # -*- coding: utf-8 -*-
# from typing import Dict
#
# from aiohttp.client_exceptions import ClientError
# from nonebot.plugin import on_command, on_message
# from nonebot.adapters.cqhttp import Bot, MessageEvent, GroupMessageEvent
# from nonebot.typing import T_State
# from services.log import logger
# from utils.utils import get_message_text, get_message_imgs
# from configs.config import Config
# from nonebot.rule import to_me
#
#
#
# __zx_plugin_name__ = "识图"
# __plugin_usage__ = """
# usage
# 识别图片 [二次元图片]
# 指令:
# 识图 [图片]
# """.strip()
# __plugin_des__ = "以图搜图,看破本源"
# __plugin_cmd__ = ["识图"]
# __plugin_type__ = ("一些工具",)
# __plugin_version__ = 0.1
# __plugin_author__ = "synodriver"
# __plugin_settings__ = {
# "level": 5,
# "default_status": True,
# "limit_superuser": False,
# "cmd": ["识图"],
# }
# __plugin_configs__ = {
# "MAX_FIND_IMAGE_COUNT": {"value": 3, "help": "识图返回的最大结果数", "default_value": 3}
# }
#
#
# async def get_des(url: str, mode: str, user_id: int):
# """
# :param url: 图片链接
# :param mode: 图源
# :param user_id: 用户 id
# """
# if mode == "iqdb":
# async for msg in get_des_iqdb(url):
# yield msg
# elif mode == "ex":
# async for msg in get_des_ex(url):
# yield msg
# elif mode == "trace":
# async for msg in get_des_trace(url):
# yield msg
# elif mode == "yandex":
# async for msg in get_des_yandex(url):
# yield msg
# elif mode.startswith("asc"):
# async for msg in get_des_asc(url, user_id):
# yield msg
# else:
# async for msg in get_des_sau(url, user_id):
# yield msg
#
#
# setu = on_command("识图", aliases={"search"}, block=True, priority=5)
#
#
# @setu.handle()
# async def handle_first_receive(bot: Bot, event: MessageEvent, state: T_State):
# msg = get_message_text(event.json())
# imgs = get_message_imgs(event.json())
# if imgs:
# state["setu"] = imgs[0]
# if msg:
# state["mod"] = msg
#
#
# # ex/nao/trace/iqdb/ascii2d
# # @setu.got("mod", prompt="从哪里查找呢? ex/nao/trace/iqdb/ascii2d")
# # async def get_func(bot: Bot, event: MessageEvent, state: dict):
# # pass
#
#
# @setu.args_parser
# async def get_setu(bot: Bot, event: MessageEvent, state: T_State):
# imgs = get_message_imgs(event.json())
# msg = get_message_text(event.json())
# if not imgs:
# await setu.reject()
# if msg:
# state["mod"] = msg
# state["setu"] = imgs[0]
#
#
# @setu.got("setu", prompt="图呢?")
# async def get_setu(bot: Bot, event: MessageEvent, state: T_State):
# """
# 发现没有的时候要发问
# :return:
# """
# url: str = state["setu"]
# mod: str = state["mod"] if state.get("mod") else "nao" # 模式
# try:
# await bot.send(event=event, message="正在处理图片")
# idx = 1
# async for msg in get_des(url, mod, event.user_id):
# if msg:
# await bot.send(event=event, message=msg)
# if idx == Config.get_config(
# "nonebot_plugin_picsearcher", "MAX_FIND_IMAGE_COUNT"
# ):
# break
# idx += 1
# if id == 1:
# await bot.send(event=event, message="没找着.")
# logger.info(
# f"(USER {event.user_id}, GROUP "
# f"{event.group_id if isinstance(event, GroupMessageEvent) else 'private'}) 识图:{url}"
# )
# # image_data: List[Tuple] = await get_pic_from_url(url)
# # await setu.finish("hso")
# except IndexError:
# # await bot.send(event, traceback.format_exc())
# await setu.finish("参数错误")
# except ClientError:
# await setu.finish("连接失败")
#
#
#
#
#
#
#
#