forked from remiliacn/qqBot
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathqq_bot_core.py
More file actions
143 lines (109 loc) · 4.38 KB
/
qq_bot_core.py
File metadata and controls
143 lines (109 loc) · 4.38 KB
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
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
from json import dump
from os import path, getcwd, mkdir
from time import sleep
import nonebot
from nonebot.log import logger
# 如果下面这行报错,请暂时注释掉这行然后运行下面的main()
import config
from Services.cangku_api import CangkuApi
from Services.simulate_stock import SimulateStock
from awesome.adminControl import alarm, user_control, setu, group_control
from awesome.adminControl.weeb_controller import WeebController
config_file = \
"""
from nonebot.default_config import *
NICKNAME = {}
CONSUMER_KEY = '' # Twitter consumer key
CONSUMER_SECRET = '' # Twitter Secret Token
ACCESS_TOKEN = '' # Twitter Access Token
ACCESS_SECRET = '' # Twitter Access Secret Token
PIXIV_REFRESH_TOKEN = '' # Pixiv refresh token (upbit/pixivpy的issue#158有获取方式)
DOWNLODER_FILE_NAME = 'for_download.py'
ITPK_KEY = '' # 茉莉机器人API KEY
ITPK_SECRET = '' # 茉莉机器人API SECRET
SAUCE_API_KEY = '' # Sauce API key.
HOST = '127.0.0.1'
PORT = 5700
SUPER_USER = 0 # 超级管理员qq号 (int)
# 如果需要YouTube自动扒源功能可保留下面的参数,否则可以删除
# 删除后可移除forDownload.py文件以及do_youtube_update_fetch()方法
# 该方法存在于./awesome/plugins/get_tweet.py
PATH_TO_ONEDRIVE = '' # OneDrive盘路径,或服务器文件路径终点
PATH_TEMP_DOWNLOAD = '' # 视频下载的缓存地址
FFMPEG_PATH = '' # FFMPEG路径
SHARE_LINK = '' # OneDrive分享地址,或服务器目录根地址。
CANGKU_USERNAME = ''
CANGKU_PASSWORD = ''
OKEX_API_KEY = ""
OKEX_SECRET_KEY= ""
OKEX_PASSPHRASE = ""
"""
alarm_api = alarm.Alarm()
user_control_module = user_control.UserControl()
setu_control = setu.SetuFunction()
admin_control = group_control.Shadiaoadmin()
weeb_learning = WeebController()
cangku_api = CangkuApi()
virtual_market = SimulateStock()
def register_true():
try:
create_dir(f'{getcwd()}/data/biaoqing')
create_dir(f'{getcwd()}/data/bilibiliPic')
create_dir(f'{getcwd()}/data/pixivPic/')
create_dir(f'{getcwd()}/data/pixivPic/')
create_dir(f'{getcwd()}/data/lol/')
create_dir(f'{getcwd()}/data/live/')
create_dir(f'{getcwd()}/config/')
create_dir(f'{getcwd()}/Waifu/')
create_dir(f'{getcwd()}/data/')
create_dir(f'{getcwd()}/data/bot')
create_dir(f'{getcwd()}/data/bot/stock')
except IOError:
raise IOError(
'Error occurred while creating directory for biaoqing, and bilibiliPic.'
)
create_file('data/started.json')
create_file('config/downloader_data.json')
create_file('config/YouTubeNotify.json')
create_file('data/started.json', {'status': True})
create_file('config/downloader.json', {
'_comment': {
'_comment': '示例downloader配置请见downloader_sample.json', "channel": "UCyIcOCH-VWaRKH9IkR8hz7Q",
'qqGroup': 123456789,
'videoID': '',
'enabled': False,
'notify': False,
'upcomingID': '',
'liveID': ''}
})
with open('data/started.json', 'w+') as f:
dump({'status': True}, f, indent=4)
def create_dir(path_to_check: str):
if not path.exists(path_to_check):
mkdir(path_to_check)
def create_file(path_to_check: str, dump_data=None):
if dump_data is None:
dump_data = {}
if not path.exists(path_to_check):
with open(path_to_check, 'w+', encoding='utf-8') as f:
dump(dump_data, f, indent=4, ensure_ascii=False)
def main():
# 记着生成config文件后把本文件的import config去掉注释
nonebot.init(config)
nonebot.log.logger.setLevel('WARNING')
nonebot.load_plugins(
path.join(path.dirname(__file__), 'awesome', 'plugins'),
'awesome.plugins'
)
logger.warning('Plugins successfully installed.')
nonebot.run()
if __name__ == '__main__':
if not path.exists(f'{getcwd()}/config.py'):
logger.warning('未检测到配置文件,尝试生成模板中……')
with open('config.py', 'w+', encoding='utf-8') as file:
file.write(config_file)
logger.warning('模板生成完毕!请修改config.py中的参数!')
sleep(10)
exit(1)
register_true()
main()