summaryrefslogtreecommitdiff
path: root/ATRI/plugins/hbook.py
diff options
context:
space:
mode:
authorKyomotoi <[email protected]>2020-08-18 22:47:39 +0800
committerKyomotoi <[email protected]>2020-08-18 22:47:39 +0800
commit0d3d479a9b98aab47fb84ce0f5eadff17ff5d046 (patch)
treef57fb390c6155060d8119b6f1d2895e2aa07fb8e /ATRI/plugins/hbook.py
parent636a16033ccb426a888e4f8a7d411e5fcb68faf2 (diff)
downloadATRI-0d3d479a9b98aab47fb84ce0f5eadff17ff5d046.tar.gz
ATRI-0d3d479a9b98aab47fb84ce0f5eadff17ff5d046.tar.bz2
ATRI-0d3d479a9b98aab47fb84ce0f5eadff17ff5d046.zip
[Update]
Diffstat (limited to 'ATRI/plugins/hbook.py')
-rw-r--r--ATRI/plugins/hbook.py137
1 files changed, 75 insertions, 62 deletions
diff --git a/ATRI/plugins/hbook.py b/ATRI/plugins/hbook.py
index 7ed14fe..465d3b1 100644
--- a/ATRI/plugins/hbook.py
+++ b/ATRI/plugins/hbook.py
@@ -1,6 +1,7 @@
import re
import time
import json
+from pathlib import Path
from datetime import datetime
from random import choice
from nonebot import on_command, CommandSession
@@ -21,78 +22,90 @@ pattern = r"来(.*?)[点丶份张幅](.*?)的?本子"
@on_command('hbook', patterns = pattern, only_to_me = False)
async def _(session: CommandSession):
h_user = session.event.user_id
- if 0 <= now_time() < 5.5:
- await session.send(
- choice(
- [
- 'zzzz......',
- 'zzzzzzzz......',
- 'zzz...好涩哦..zzz....',
- '别...不要..zzz..那..zzz..',
- '嘻嘻..zzz..呐~..zzzz..'
- ]
- )
- )
- else:
- with open('ATRI/plugins/noobList/noobList.json', 'r') as f:
+ group = session.event.group_id
+ try:
+ with open(Path('.') / 'ATRI' / 'plugins' / 'noobList' / 'noobGroup.json', 'r') as f:
data = json.load(f)
+ except:
+ data = {}
+ try:
+ with open(Path('.') / 'ATRI' / 'plugins' / 'noobList' / 'noobList.json', 'r') as f:
+ data1 = json.load(f)
+ except:
+ data1 = {}
- if str(h_user) in data.keys():
+ if str(group) in data.keys():
+ pass
+ else:
+ if str(h_user) in data1.keys():
pass
else:
- with open('ATRI/plugins/switch/switch.json', 'r') as f:
- data = json.load(f)
-
- if data["hbook"] == "on":
- num = 1
- tag = ''
- start = time.perf_counter()
- h_msg = str(session.event.message)
-
- info = re.findall(pattern, h_msg)
- if info:
- num = int(info[0][0] or 1)
- tag = str(info[0][1])
- if num > 5:
- await session.send('你是不是涩批啊!要那么多干啥?!我最多发5份!')
- num = 5
+ if 0 <= now_time() < 5.5:
+ await session.send(
+ choice(
+ [
+ 'zzzz......',
+ 'zzzzzzzz......',
+ 'zzz...好涩哦..zzz....',
+ '别...不要..zzz..那..zzz..',
+ '嘻嘻..zzz..呐~..zzzz..'
+ ]
+ )
+ )
+ else:
+ with open(Path('.') / 'ATRI' / 'plugins' / 'switch' / 'switch.json', 'r') as f:
+ data = json.load(f)
- h_type = session.event.detail_type
+ if data["hbook"] == "on":
+ num = 1
+ tag = ''
+ start = time.perf_counter()
+ h_msg = str(session.event.message)
+
+ info = re.findall(pattern, h_msg)
+ if info:
+ num = int(info[0][0] or 1)
+ tag = str(info[0][1])
+ if num > 5:
+ await session.send('你是不是涩批啊!要那么多干啥?!我最多发5份!')
+ num = 5
+
+ h_type = session.event.detail_type
- try:
- header = {'User-Agent':'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/83.0.4103.97 Safari/537.36'}
- keyword = {'show':'title,titleen,tags','keyboard':tag}
- print(keyword)
+ try:
+ header = {'User-Agent':'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/83.0.4103.97 Safari/537.36'}
+ keyword = {'show':'title,titleen,tags','keyboard':tag}
+ print(keyword)
- res = await response.post_bytes('https://b-upp.com/search/', headers=header, data=keyword)
- res = res.decode()
- except:
- session.finish('貌似请求数据失败了...')
+ res = await response.post_bytes('https://b-upp.com/search/', headers=header, data=keyword)
+ res = res.decode()
+ except:
+ session.finish('貌似请求数据失败了...')
- if '没有搜索到相关的内容' in res:
- n_msg = '...似乎没有找到[{}]相关的本子呢'.format(tag)
- await session.send(message=n_msg)
-
- else:
- p = '<a href="(.*?)" target="_blank" title="(.*?)">'
- data = re.findall(p,res)
- n = len(data)
- limit = num
+ if '没有搜索到相关的内容' in res:
+ n_msg = '...似乎没有找到[{}]相关的本子呢'.format(tag)
+ await session.send(message=n_msg)
- if n > limit: # type: ignore
- n = limit # type: ignore
+ else:
+ p = '<a href="(.*?)" target="_blank" title="(.*?)">'
+ data = re.findall(p,res)
+ n = len(data)
+ limit = num
+
+ if n > limit: # type: ignore
+ n = limit # type: ignore
- msg = f'据提供信息,已查询到{n}本关键词为[{tag}]的本子:'
- if h_type == 'group':
- msg = f'[CQ:at,qq={h_user}]\n根据提供信息,已查询到{n}本关键词为[{tag}]的本子:'
- for i in range(n):
- msg0 = ('\n——————————\n本子链接:https://b-upp.com%s \n本子标题:%s '%(data[i]))
+ msg = f'据提供信息,已查询到{n}本关键词为[{tag}]的本子:'
+ if h_type == 'group':
+ msg = f'[CQ:at,qq={h_user}]\n根据提供信息,已查询到{n}本关键词为[{tag}]的本子:'
+ for i in range(n):
+ msg0 = ('\n——————————\n本子链接:https://b-upp.com%s \n本子标题:%s '%(data[i]))
+ msg += msg0
+ end = time.perf_counter()
+ msg0 = f'\n——————————\n耗时: {round(end - start, 3)}s'
msg += msg0
- end = time.perf_counter()
- msg0 = f'\n——————————\n耗时: {round(end - start, 3)}s'
- msg += msg0
- await session.send(msg)
+ await session.send(msg)
- else:
- await session.send('该功能已禁用...') \ No newline at end of file
+ else:
+ await session.send('该功能已禁用...') \ No newline at end of file