summaryrefslogtreecommitdiff
path: root/bot.py
blob: 9e980e8cad0246b21b90daecce605cd917535392 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
#!/usr/bin/env python3
# -*- encoding: utf-8 -*-
'''
@File    :   bot.py
@Time    :   2020/10/11 14:36:01
@Author  :   Kyomotoi
@Contact :   [email protected]
@Github  :   https://github.com/Kyomotoi
@License :   Copyright © 2018-2020 Kyomotoi, All Rights Reserved.
'''
__author__ = 'kyomotoi'

import time
import nonebot
import datetime
from pathlib import Path
from utils.utils_yml import load_yaml
from nonebot.log import default_format, logger

from check import checkATRI

# 版权说明
COPYRIGHT = (r"""====================[ATRI | アトリ]====================
* Mirai + NoneBot2 + Python
* Copyright © 2018-2020 Kyomotoi,All Rights Reserved
* Project: https://github.com/Kyomotoi/ATRI
* Blog: blog.lolihub.icu
=======================================================""")
print(COPYRIGHT)
time.sleep(1)

# 检查是否符合条件运行
checkATRI()
time.sleep(1)

# 读取配置
CONFIG_PATH = Path('.') / 'config.yml'
config = load_yaml(CONFIG_PATH)
config = config['bot']

print(config)

# 初始化
nonebot.init(DEBUG=config['debug'],
             SUPERUSSERS=config['superusers'],
             NICKNAME=config['nickname'],
             COMMAND_START=config['command_start'],
             COMMAND_SEP=config['command_sep'])
app = nonebot.get_asgi()

# 读取插件目录
nonebot.load_plugins('ATRI/plugins')

# 自定义 Logger
LOGGER_INFO_PATH = Path(
    '.'
) / 'logs' / 'info' / f"{datetime.datetime.now().strftime('%Y%m%d-%H%M%S')}-INFO.log"
LOGGER_ERROR_PATH = Path(
    '.'
) / 'logs' / 'error' / f"{datetime.datetime.now().strftime('%Y%m%d-%H%M%S')}-ERROR.log"

# 记录正常日志
logger.add(LOGGER_INFO_PATH,
           rotation='10 MB',
           diagnose=False,
           level='INFO',
           format=default_format)

# 记录报错日志
logger.add(LOGGER_ERROR_PATH,
           rotation='10 MB',
           diagnose=False,
           level='ERROR',
           format=default_format)

if __name__ == '__main__':
    nonebot.run(app='bot:app',
                host=config['host'],
                port=config['port'])