mirror of
https://github.com/zhenxun-org/zhenxun_bot.git
synced 2025-12-15 14:22:55 +08:00
update
This commit is contained in:
parent
22883cbf3a
commit
1d6c71cf1e
@ -12,7 +12,7 @@ USE_CONFIG_FILE = False
|
||||
|
||||
# API KEY(必要)
|
||||
LOLICON_KEY: str = "" # lolicon(可不填,lolicon已放开api限制)
|
||||
RSSHUBAPP: str = "https://docs.rsshub.app/" # rsshub
|
||||
RSSHUBAPP: str = "https://rsshub.app/" # rsshub
|
||||
# 图灵
|
||||
TL_KEY: List[str] = []
|
||||
|
||||
|
||||
@ -6,6 +6,8 @@ from .data_source import get_pixiv_urls, download_pixiv_imgs, search_pixiv_urls
|
||||
import time
|
||||
from services.log import logger
|
||||
from nonebot.adapters.cqhttp.exception import NetworkError
|
||||
from asyncio.exceptions import TimeoutError
|
||||
from aiohttp.client_exceptions import ClientConnectorError
|
||||
|
||||
|
||||
__plugin_name__ = 'P站'
|
||||
@ -81,26 +83,30 @@ async def _(bot: Bot, event: MessageEvent, state: T_State):
|
||||
text_list, urls, code = await get_pixiv_urls(rank_dict.get('1'))
|
||||
elif len(msg) == 1:
|
||||
if msg[0] not in ['1', '2', '3', '4', '5', '6', '7', '8', '9']:
|
||||
_ulmt.set_False(event.user_id)
|
||||
await pixiv_rank.finish("要好好输入要看什么类型的排行榜呀!", at_sender=True)
|
||||
text_list, urls, code = await get_pixiv_urls(rank_dict.get(msg[0]))
|
||||
elif len(msg) == 2:
|
||||
text_list, urls, code = await get_pixiv_urls(rank_dict.get(msg[0]), int(msg[1]))
|
||||
elif len(msg) == 3:
|
||||
if not check_date(msg[2]):
|
||||
_ulmt.set_False(event.user_id)
|
||||
await pixiv_rank.finish('日期格式错误了', at_sender=True)
|
||||
text_list, urls, code = await get_pixiv_urls(rank_dict.get(msg[0]), int(msg[1]), msg[2])
|
||||
else:
|
||||
_ulmt.set_False(event.user_id)
|
||||
await pixiv_rank.finish('格式错了噢,看看帮助?', at_sender=True)
|
||||
if code != 200:
|
||||
_ulmt.set_False(event.user_id)
|
||||
await pixiv_keyword.finish(text_list[0])
|
||||
else:
|
||||
if not text_list or not urls:
|
||||
_ulmt.set_False(event.user_id)
|
||||
await pixiv_rank.finish('没有找到啊,等等再试试吧~V', at_sender=True)
|
||||
for i in range(len(text_list)):
|
||||
try:
|
||||
await pixiv_rank.send(text_list[i] + await download_pixiv_imgs(urls[i], event.user_id))
|
||||
except NetworkError:
|
||||
except (NetworkError, TimeoutError, ClientConnectorError):
|
||||
await pixiv_keyword.send('这张图网络炸了!', at_sender=True)
|
||||
logger.info(
|
||||
f"(USER {event.user_id}, GROUP {event.group_id if event.message_type != 'private' else 'private'})"
|
||||
@ -159,7 +165,7 @@ async def _(bot: Bot, event: MessageEvent, state: T_State):
|
||||
for i in range(len(text_list)):
|
||||
try:
|
||||
await pixiv_keyword.send(text_list[i] + await download_pixiv_imgs(urls[i], event.user_id))
|
||||
except NetworkError:
|
||||
except (NetworkError, TimeoutError, ClientConnectorError):
|
||||
await pixiv_keyword.send('这张图网络炸了!', at_sender=True)
|
||||
logger.info(
|
||||
f"(USER {event.user_id}, GROUP {event.group_id if event.message_type != 'private' else 'private'})"
|
||||
|
||||
@ -7,6 +7,8 @@ from bs4 import BeautifulSoup
|
||||
import feedparser
|
||||
from util.init_result import image
|
||||
from asyncio.exceptions import TimeoutError
|
||||
from configs.config import RSSHUBAPP
|
||||
from aiohttp.client_exceptions import ClientConnectorError
|
||||
import platform
|
||||
if platform.system() == 'Windows':
|
||||
import asyncio
|
||||
@ -14,11 +16,13 @@ if platform.system() == 'Windows':
|
||||
|
||||
|
||||
async def get_pixiv_urls(mode: str, num: int = 5, date: str = '') -> 'list, list, int':
|
||||
url = 'https://rsshub.app/pixiv/ranking/{}'
|
||||
iurl = url.format(mode)
|
||||
url = f'{RSSHUBAPP}pixiv/ranking/{mode}'
|
||||
if date:
|
||||
iurl += f'/{date}'
|
||||
return await parser_data(iurl, num)
|
||||
url += f'/{date}'
|
||||
try:
|
||||
return await parser_data(url, num)
|
||||
except ClientConnectorError:
|
||||
return get_pixiv_urls(mode, num, date)
|
||||
|
||||
|
||||
async def download_pixiv_imgs(urls: list, user_id: int) -> str:
|
||||
|
||||
@ -13,6 +13,11 @@ import re
|
||||
from models.count_user import UserCount
|
||||
from aiohttp.client_exceptions import ClientConnectorError
|
||||
from configs.config import MAX_SETU_R_COUNT
|
||||
from configs.path_config import TXT_PATH
|
||||
try:
|
||||
import ujson as json
|
||||
except ModuleNotFoundError:
|
||||
import json
|
||||
|
||||
__plugin_name__ = '色图'
|
||||
__plugin_usage__ = f'''示例:
|
||||
@ -59,7 +64,11 @@ async def _(bot: Bot, event: GroupMessageEvent, state: T_State):
|
||||
if _ulmt.check(event.user_id):
|
||||
await setu.finish(f"您有色图正在处理,请稍等")
|
||||
_ulmt.set_True(event.user_id)
|
||||
setu_img, index = get_setu(img_id)
|
||||
try:
|
||||
setu_data = json.load(open(f'{TXT_PATH}/setu_data.json', 'r', encoding='utf8'))
|
||||
except Exception:
|
||||
setu_data = {}
|
||||
setu_img, index = get_setu(img_id, setu_data)
|
||||
if setu_img:
|
||||
try:
|
||||
await setu.send(setu_img)
|
||||
@ -114,7 +123,11 @@ async def _(bot: Bot, event: PrivateMessageEvent, state: T_State):
|
||||
if _ulmt.check(event.user_id):
|
||||
await setu.finish(f"您有色图正在处理,请稍等")
|
||||
_ulmt.set_True(event.user_id)
|
||||
setu_img, index = get_setu(img_id)
|
||||
try:
|
||||
setu_data = json.load(open(f'{TXT_PATH}/setu_data.json', 'r', encoding='utf8'))
|
||||
except Exception:
|
||||
setu_data = {}
|
||||
setu_img, index = get_setu(img_id, setu_data)
|
||||
if setu_img:
|
||||
await setu.send(setu_img)
|
||||
logger.info(
|
||||
@ -221,10 +234,14 @@ async def _(bot: Bot, event: MessageEvent, state: T_State):
|
||||
else:
|
||||
return
|
||||
# try:
|
||||
try:
|
||||
setu_data = json.load(open(f'{TXT_PATH}/setu_data.json', 'r', encoding='utf8'))
|
||||
except Exception:
|
||||
setu_data = {}
|
||||
if not keyword:
|
||||
for _ in range(num):
|
||||
try:
|
||||
img, index = get_setu('')
|
||||
img, index = get_setu('', setu_data)
|
||||
if not img:
|
||||
break
|
||||
await setu_reg.send(img)
|
||||
|
||||
@ -115,7 +115,7 @@ async def search_online_setu(url: str):
|
||||
return '\n图片被小怪兽恰掉啦..!QAQ', -1
|
||||
|
||||
|
||||
def get_setu(index: str):
|
||||
def get_setu(index: str, setu_data: dict):
|
||||
length = len(os.listdir(IMAGE_PATH + path))
|
||||
if length == 0:
|
||||
return None, None
|
||||
@ -125,7 +125,14 @@ def get_setu(index: str):
|
||||
if int(index) > length or int(index) < 0:
|
||||
return f"超过当前上下限!({length - 1})", 999
|
||||
else:
|
||||
return f'id:{index}' + image(f'{index}.jpg', 'setu'), index
|
||||
if setu_data:
|
||||
index = str(index)
|
||||
return f'id:{index}\n' \
|
||||
f'title:{setu_data[index]["title"]}\n' \
|
||||
f'author:{setu_data[index]["author"]}\n' \
|
||||
f'PID:{setu_data[index]["pid"]}' + image(f'{index}.jpg', path), index
|
||||
else:
|
||||
return f'id:{index}' + image(f'{index}.jpg', path), index
|
||||
return None, None
|
||||
|
||||
|
||||
|
||||
37
plugins/server_ip.py
Normal file
37
plugins/server_ip.py
Normal file
@ -0,0 +1,37 @@
|
||||
from nonebot import on_command
|
||||
from nonebot.adapters.cqhttp import Bot, PrivateMessageEvent, GroupMessageEvent
|
||||
from nonebot.typing import T_State
|
||||
from nonebot.rule import to_me
|
||||
|
||||
__plugin_name__ = '服务器'
|
||||
__plugin_usage__ = '用法: 无'
|
||||
|
||||
|
||||
server_ip = on_command("服务器", aliases={'ip'}, rule=to_me(), priority=5, block=True)
|
||||
|
||||
|
||||
@server_ip.handle()
|
||||
async def _(bot: Bot, event: PrivateMessageEvent, state: T_State):
|
||||
await server_ip.finish("|* 请不要发给其他人! *|\n"
|
||||
"\t121.40.195.22\n"
|
||||
"|* 请不要发给其他人! *|\n"
|
||||
"csgo ~号键控制台输入 connect 121.40.195.22 进入服务器\n"
|
||||
"然后再公屏输入 !diy 来使用皮肤(英文感叹号,注意)\n"
|
||||
"【说不定可以凑到内战噢,欢迎~{娱乐为主}】", at_sender=True)
|
||||
|
||||
|
||||
@server_ip.handle()
|
||||
async def _(bot: Bot, event: GroupMessageEvent, state: T_State):
|
||||
if event.group_id == 698279647:
|
||||
await server_ip.finish("嗨呀!当前服务器地址是:"
|
||||
"\ncsgo:\n\tay: 121.40.195.22\n\t"
|
||||
"wzt: 101.200.199.143\n\t夜之北枭: 101.132.170.254\n我的世界:\n\t47.111.1.220:25565")
|
||||
elif event.group_id == 1046451860:
|
||||
await server_ip.finish("嗨呀!当前服务器地址是:\n121.40.195.22\n !diy")
|
||||
else:
|
||||
await server_ip.finish("不好意思呀,小真寻不能为你使用此功能,因为服务器IP是真寻的小秘密呀!", at_sender=True)
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
Loading…
Reference in New Issue
Block a user