コード例 #1
0
from nonebot.adapters.cqhttp.message import Message
st = [
    '悬疑推理', '奇幻', '青梅竹马', 'RPG', '探险', '传奇', '学园', '恋爱', '女性向', '猎奇', 'NTR',
    '致郁', '过激', '后宫', '妹系', '同居', '女性视角', '喜剧', '机器人', '大小姐', '魔法', '魔物娘',
    '萝莉', '近未来', '校园', '社团', '战斗', '科幻', '女装', '馆', '女仆', '病娇', '老师', '岛',
    '纯爱', '青春', '百合', '护士', '穿越', '策略', '模拟经营', '姐妹', '兽耳', '田园', '职场', '偶像',
    '御姐', '冒险', '怪物娘', '女神', '巫女', '解谜', '幻想', '公主', '新娘', '美少女养成游戏', '科学幻想',
    '鬼畜', '内涵', '异世界', '养成', '黑暗向', '悬疑', '国产', '妻', '模拟养成', '催泪', '架空世界',
    '3D', '双子', '天使', '甜作', '伪娘', '重口', '夏', '治愈', '女子**', '姐系', '超能力', '恶魔',
    'ACT', '三角关系', '魔女', '魔法少女', '怪物', '女战士', '开店', '吸血鬼', '咖啡店', '音乐', '末世',
    '和风', '魔幻', '蔷薇向', '轮回', '傲娇', '灵异', '禁忌恋', '另类', '变身', '复仇', '电波作', '童话',
    '未亡人', '蒸汽朋克', '网络世界', '剧情', '青涩'
]

Random_Gal = on_command('gal', priority=5,
                        rule=check_white_list_all())  # gal random
Tag_List = on_command('taglist', priority=5, rule=check_white_list_all())


async def get_img(pic_url):
    async with AsyncClient(proxies={}) as Client:
        _get_sample = await Client.get(url=pic_url)
        get_sample = _get_sample.read()
        with open(file=os.path.join(os.getcwd(), 'DataBase\\SamplePicGal.jpg'),
                  mode='wb') as WS:
            WS.write(get_sample)
    pic_url = os.path.join(os.getcwd(), 'DataBase\\SamplePicGal.jpg')
    return pic_url


async def get_random_game(Client, event):  # 随机galgame推荐
コード例 #2
0
ファイル: Setu.py プロジェクト: Hajimarino-HOPE/SakuraiZer0
import random
import os
import re
import datetime
import aiohttp
from config import lolicon_api, masterList, setu_path
from httpx import AsyncClient
from nonebot import get_driver
from nonebot.adapters.cqhttp import Bot
from nonebot.adapters.cqhttp.event import (Event, GroupMessageEvent,
                                           PrivateMessageEvent)
from nonebot.adapters.cqhttp.message import Message
from nonebot.plugin import on_command, on_regex

global last_time_command, last_time_Rrandom, resetTime
command_setu = on_command("setu", priority=5, rule=check_white_list_all())
regex_setu_random = on_regex(
    pattern=r'^[来整]点[涩色活好康][的图儿]$|^[色涩]图来$|^冲[亿1一]发$|^冲$|^[色涩黄]图$')
regex_setu_search = on_regex(
    pattern=r'^[来整]点.\S*[色涩黄]图$|^[来整][几.\S*][张份个]\S*[色涩黄]图$')

last_time_command, last_time_Rrandom, resetTime = '', '', True
download_urls = []
word_to_int = {
    "一": 1,
    "二": 2,
    "两": 2,
    "三": 3,
    "四": 4,
    "五": 5,
    "六": 6,
コード例 #3
0
    5.多图连搜
"""
import re
import os
from nonebot.adapters.cqhttp import Bot
from nonebot.adapters.cqhttp.event import (Event, GroupMessageEvent,
                                           PrivateMessageEvent)
from nonebot.adapters.cqhttp.message import Message
from nonebot.plugin import on_message
from costrule import check_white_list_all, only_reply
from httpx import AsyncClient
from config import SauceNAO_api

api_key = SauceNAO_api
Reply_SearchPic = on_message(priority=5,
                             rule=only_reply() & check_white_list_all(),
                             block=True)


@Reply_SearchPic.handle()
async def _Reply_SearchPic(bot: Bot, event: Event):
    send_except_msg = (Message(
        f"[CQ:at,qq={event.get_user_id()}]你确定你给我的是一张图片?\n"
        "若持续出此报错,请按照以下步骤搜图:\n"
        '1.将图片逐张转发至Senrin\n'
        '2.回复需要搜索的图片并附上“搜图”'))
    if '搜图' in str(event.get_message()):
        search_list = []
        result_list = []
        send_msg_result = '搜图结果如下:\n'
        for _msg in event.reply.message:  # type:ignore    初步处理数据
コード例 #4
0
from config import bot_id, masterList
from costrule import check_white_list_all, check_white_list_group, only_master
from nonebot import get_bots, get_driver, on_command, require
from nonebot.adapters.cqhttp import Bot, Event
from nonebot.adapters.cqhttp.message import Message
from nonebot.adapters.cqhttp.event import GroupIncreaseNoticeEvent, GroupMessageEvent
from nonebot.plugin import on_message, on_notice

global memdic
memdic = {}
LogPath = os.path.join(os.getcwd(), 'DataBase', 'Json', 'datalog.json')
StartTime = datetime.datetime.now()
scheduler = require('nonebot_plugin_apscheduler').scheduler  # 定义计划任务
water = on_command("water", priority=5,
                   rule=check_white_list_all())  # 定义water查询命令
resetLog = on_command("resetLog", priority=5, rule=only_master())  # 定义手动重置模块
writeLog = on_message(rule=check_white_list_group(), priority=5)  # 定义吹氵记录增加
addLog = on_notice(priority=5)  # 定义群成员变动


async def get_water_list(groupID, bot):
    linedic = memdic[str(groupID)]
    findic = reversed(
        sorted(linedic.items(), key=lambda kv: (kv[1], kv[0])))
    a = 0
    pa = "-------氵怪排行榜-------"
    for elem in findic:
        UQID = elem[0]
        ts = elem[1]
        a = a+1
コード例 #5
0
ファイル: Help.py プロジェクト: Hajimarino-HOPE/SakuraiZer0
from costrule import check_white_list_all
import os
import json
import random

HelpPath = os.path.join(os.getcwd(), 'DataBase', 'HelpTXT')
StudyPath = os.path.join(os.getcwd(), 'DataBase', 'Json', 'studylib.json')

with open(os.path.join(HelpPath, 'HelpList.txt'), 'r',
          encoding='utf-8-sig') as hp:
    HelpList = hp.read()
with open(StudyPath, 'r', encoding="utf-8") as fr:
    studylib = json.load(fr)
at_msg_reply = studylib['public']['preinstall_words']['at_msg_reply']

help = on_command("help", priority=5, rule=check_white_list_all())
at_msg = on_message(rule=to_me() & check_white_list_all(), priority=5)


@help.handle()
async def handle_help(bot: Bot, event: Event, state: dict):
    args = str(event.get_message()).strip()
    if args:
        state["functionID"] = args
        await bot.send(event, "get it!")
    else:
        msg = ('请直接输入功能代码获取帮助~\n'
               f'[CQ:at,qq={event.get_user_id()}]Senrin目前支持的功能如下:\n'
               f'{HelpList}')
        await help.send(Message(msg))
コード例 #6
0
ファイル: Study.py プロジェクト: Hajimarino-HOPE/SakuraiZer0
    }
"""
import os
import json
from config import masterList
from costrule import check_white_list_all, only_master
from nonebot import on_command
from nonebot.adapters.cqhttp import Bot, Event
from nonebot.adapters.cqhttp.message import Message
from nonebot.adapters.cqhttp.event import PrivateMessageEvent
from nonebot.plugin import on_message
from nonebot.typing import T_State
from PIL import Image, ImageDraw, ImageFont

study = on_command("study", priority=5,
                   rule=check_white_list_all())  # 定义study命令
lib_manage = on_command('lib_manage', priority=5,
                        rule=only_master())  # 定义查询与删除
get_march = on_message(rule=check_white_list_all(), priority=5)
StudyPath = os.path.join(os.getcwd(), 'DataBase', 'Json', 'studylib.json')

with open(StudyPath, 'r', encoding="utf-8") as fr:
    studylib = json.load(fr)


@study.handle()  # study写入,需二次确认[private]
async def handle_study(bot: Bot, event: Event, state: T_State):
    arg = str(event.get_message()).split()
    """
        study写入传参 #study module(str) key(str) value(str)        至于<similar(int)>就先咕咕咕吧(别打我)
        这次用dict写,可以用更多的符号
コード例 #7
0
ファイル: Info.py プロジェクト: Hajimarino-HOPE/SakuraiZer0
    """time"""
    set_Font = ImageFont.truetype(os.path.join(
        os.getcwd(), "DataBase", 'msyh.ttc'), 40)  # 设置字体属性
    write_words.text((40, 500), f'入群时间:{time}', fill="#FFFFFF", font=set_Font)
    """copyright"""
    cr = 'Copyright ©2020-2021 SakuraiCora, All Rights Reserved.'
    set_Font = ImageFont.truetype(os.path.join(
        os.getcwd(), "DataBase", 'msyh.ttc'), 15)  # 设置字体属性
    w, h = set_Font.getsize(cr)
    write_words.text(((640-w)/2, 600), cr, fill="#FFFFFF",  # type:ignore
                     font=set_Font)
    save_path = os.path.join(os.getcwd(), "DataBase", "HeadSend.jpg")  # 设置保存路径
    back_ground.save(save_path)
    return save_path

info = on_command('info', priority=5, rule=check_white_list_all())


@info.handle()
async def info_get(bot: Bot, event):
    args = str(event.get_message()).strip()
    if args:
        try:
            args = re.findall(r"\[CQ:at,qq=(\d+).*?\]", args)  # 正则匹配QQ号
            args = int(args[0])
        except:
            await info.finish("[参数处理错误:args]")  # 异常处理
    if isinstance(event, GroupMessageEvent):
        if isinstance(args, int):
            msg = Message(
                "Senrin正在制作属于你的专属资料卡......\n"