summaryrefslogtreecommitdiff
path: root/ATRI/plugins/saucenao
diff options
context:
space:
mode:
Diffstat (limited to 'ATRI/plugins/saucenao')
-rw-r--r--ATRI/plugins/saucenao/__init__.py12
-rw-r--r--ATRI/plugins/saucenao/data_source.py29
2 files changed, 41 insertions, 0 deletions
diff --git a/ATRI/plugins/saucenao/__init__.py b/ATRI/plugins/saucenao/__init__.py
new file mode 100644
index 0000000..c36fde1
--- /dev/null
+++ b/ATRI/plugins/saucenao/__init__.py
@@ -0,0 +1,12 @@
+from nonebot.adapters.cqhttp import Bot, MessageEvent
+
+from ATRI.service import Service as sv
+from ATRI.rule import is_in_service
+
+
+__doc__ = """
+以图搜图
+权限组:所有人
+用法:
+ 以图搜图 (pic)
+"""
diff --git a/ATRI/plugins/saucenao/data_source.py b/ATRI/plugins/saucenao/data_source.py
new file mode 100644
index 0000000..636c540
--- /dev/null
+++ b/ATRI/plugins/saucenao/data_source.py
@@ -0,0 +1,29 @@
+from ATRI.utils.request import post_bytes
+
+
+URL = "https://saucenao.com/search.php"
+
+
+class SauceNao:
+ def __init__(self,
+ api_key: str,
+ output_type=2,
+ testmode=0,
+ dbmask=None,
+ dbmaski=32768,
+ db=5,
+ numres=1) -> None:
+ params = dict()
+ params['api_key'] = api_key
+ params['output_type'] = output_type
+ params['testmode'] = testmode
+ params['dbmask'] = dbmask
+ params['dbmaski'] = dbmaski
+ params['db'] = db
+ params['numres'] = numres
+ self.params = params
+
+ async def search(self, url: str):
+ self.params['url'] = url
+ res = await post_bytes(url=URL, params=self.params)
+ return res