Skip to main content

Yet Another Picture Search Nonebot Plugin

Project description

NoneBotPluginLogo

NoneBotPluginText

YetAnotherPicSearch

✨ 基于 NoneBot2PicImageSearch 的另一个 NoneBot 搜图插件 ✨

python pdm-managed
Pydantic Version 1 Or 2 license pypi pypi download
NoneBot Registry Supported Adapters

📖 介绍

主要受到 cq-picsearcher-bot 的启发。我只需要基础的搜图功能,于是忍不住自己也写了一个,用来搜图、搜番、搜本子。

目前支持的搜图服务:
Ascii2D | Baidu | E-Hentai | ExHentai | Google | Iqdb | SauceNAO | TraceMoe | Yandex

💿 安装

以下提到的方法 任选其一 即可

[推荐] 使用 nb-cli 安装 在 nonebot2 项目的根目录下打开命令行, 输入以下指令即可安装
nb plugin install YetAnotherPicSearch
使用包管理器安装 在 nonebot2 项目的插件目录下, 打开命令行, 根据你使用的包管理器, 输入相应的安装命令
pip
pip install YetAnotherPicSearch
pdm
pdm add YetAnotherPicSearch
poetry
poetry add YetAnotherPicSearch
conda
conda install YetAnotherPicSearch

打开 nonebot2 项目根目录下的 pyproject.toml 文件, 在 [tool.nonebot] 部分的 plugins 项里追加写入

[tool.nonebot]
plugins = [
    # ...
    "YetAnotherPicSearch"
]

⚙️ 配置

配置项 必填 默认值 说明
通用配置
PROXY None 大部分请求所使用的代理地址,如需要 socks 协议支持请额外执行 pip install YetAnotherPicSearch[socks] 安装
数据源配置
SAUCENAO_API_KEY $${\textsf{\color{red}是}}$$ SauceNAO 的 API KEY,在 这里 注册后到 这里 获取
如果 SauceNAO 的 API 使用触发当日上限,请同时换新的 API Key 和代理节点,仅换其中一个没有意义。
ASCII2D_BASE_URL https://ascii2d.net Ascii2D Base URL (#139)
EXHENTAI_COOKIES None ExHentai 的 Cookies,没有的情况下自动改用 E-Hentai 搜图,获取方式参考 请参考 PicImageSearch 文档
NHENTAI_USERAGENT None 用来绕过 NHentai Cloudflare 拦截的 User Agent,配置后在 E-Hentai 标题搜索无结果时会自动调用 NHentai 标题搜索
先用配置的 PROXY 做代理,使用浏览器访问 NHentai 通过 CloudFlare 检测后,获取 UA 和 Cookies 填到对应配置项
NHENTAI_COOKIES None 用来绕过 NHentai Cloudflare 拦截的 Cookies,同上
行为配置
SAUCENAO_LOW_ACC 60 SauceNAO 相似度低于这个百分比将被认定为相似度过低
AUTO_USE_ASCII2D True 是否在 SauceNAO 或 IQDB 相似度过低时 / E-Hentai 无结果时 自动使用 Ascii2D 搜索
交互配置
SEARCH_KEYWORD 搜图 触发插件功能的指令名,使用时记得带上你配置的指令头
SEARCH_KEYWORD_ONLY False 是否只响应指令消息(优先级高于 SEARCH_IN_GROUP_ONLY_KEYWORDSEARCH_IMMEDIATELY
SEARCH_IN_GROUP_ONLY_KEYWORD True 是否在群聊中只响应指令消息,否则可以通过 @Bot 触发搜图模式
SEARCH_IMMEDIATELY True 私聊发送图片是否直接触发搜图,否则需要使用命令
WAIT_FOR_IMAGE_TIMEOUT 180 当用户未提供图片时,提示用户提供图片的等待时间(秒)
消息配置
HIDE_IMG False 隐藏所有搜索结果的缩略图
HIDE_IMG_WHEN_LOW_ACC True SauceNAO / IQDB 得到低相似度结果时隐藏结果缩略图
HIDE_IMG_WHEN_WHATANIME_R18 True WhatAnime 得到 R18 结果时隐藏结果缩略图
SAUCENAO_NSFW_HIDE_LEVEL 2 对 SauceNAO 的搜索结果进行 NSFW 判断的严格程度(依次递增),启用后自动隐藏相应的 NSFW 结果的缩略图
0:不判断, 1:只判断明确的, 2:包括可疑的, 3:非明确为 SFW 的
FORWARD_SEARCH_RESULT True 若结果消息有多条,是否采用合并转发方式发送搜图结果(平台不支持会自动回退)
TO_CONFUSE_URLS ... 要破坏处理的网址列表,减少风控概率(发出来的消息包含这些网址会在网址的 ://. 后加上空格)
杂项配置
CACHE_EXPIRE 3 消息缓存过期时间 (天)

🎉 使用

使用你配置的指令(默认为 搜图)即可开始使用,附带或回复图片可直接触发搜图,可以一次性带多张图
更详细的使用方法请参考 这里

效果图

📞 联系

student_2333

QQ:3076823485
Telegram:@lgc2333
吹水群:1105946125
邮箱:lgc2333@126.com

💡 鸣谢

💰 赞助

赞助我

感谢大家的赞助!你们的赞助将是我继续创作的动力!

⭐ Star History

Star History

📝 更新日志

2.0.2

  • 添加配置项用于自定义 Ascii2D 的 Base URL

2.0.1

  • 修复 #137
    • 修复文本重复的问题
    • 修复 ExHentai 始终显示无法使用的问题
  • 修复缓存消息显示问题
  • 添加缺失依赖

2.0.0

项目重构:

  • 使用 alconna 支持多平台,重构消息缓存
  • 将之前的 搜图关键词 改为指令;同时由于不方便判断是否回复的是 Bot 自身消息,所以阉掉了这个
  • 其他细节更改
  • 配置变动:
    • 新增 SEARCH_IN_GROUP_ONLY_KEYWORD
    • 新增 WAIT_FOR_IMAGE_TIMEOUT

以前的更新日志请在 Releases 中查看

Project details


Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

yetanotherpicsearch-2.0.2.tar.gz (457.1 kB view hashes)

Uploaded Source

Built Distribution

yetanotherpicsearch-2.0.2-py3-none-any.whl (460.7 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page