QQ频道是一个集社交、群聊、小程序应用于一体的娱乐协作平台,它允许开发者自己开发自己的机器人,但是很多小白可能入手都比较头疼,不知道该如何下手,今天分享一个自己用python写的 示例
,使用的数据库依旧是mysql ::(懒得理)
转载请注明出处
官方开发文档: 点击查看
所需工具: pycharm
navaicat
mysql
https://wwkm.lanzouf.com/iWZ7q0p4ffyj
打开navaicat
新建一个数据库,(名字随意)
在新建的数据库下执行以下sql语句创建两张表
pd_user
存放用户数据
root_data
存放机器人的账号密码
{collapse} {collapse-item label=”点击展开sql语句” close}
SET NAMES utf8mb4;
SET FOREIGN_KEY_CHECKS = 0;
-- ----------------------------
-- Table structure for root_data
-- ----------------------------
DROP TABLE IF EXISTS `root_data`;
CREATE TABLE `root_data` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`bot_id` int(11) NOT NULL,
`bot_key` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL,
PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB AUTO_INCREMENT = 5 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci ROW_FORMAT = COMPACT;
SET FOREIGN_KEY_CHECKS = 1;
SET NAMES utf8mb4;
SET FOREIGN_KEY_CHECKS = 0;
-- ----------------------------
-- Table structure for pd_user
-- ----------------------------
DROP TABLE IF EXISTS `pd_user`;
CREATE TABLE `pd_user` (
`id` int(11) NOT NULL AUTO_INCREMENT COMMENT 'ID',
`pd_id` varchar(30) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT '0' COMMENT '频道_频道ID',
`pd_name` varchar(30) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT '0' COMMENT '频道_频道昵称',
`time_user` varchar(30) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT '0' COMMENT '时间_用户创建时间',
`time_data` varchar(30) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT '0' COMMENT '时间_数据更新时间',
`fy` int(11) NULL DEFAULT 0 COMMENT '发言_累计发言',
`fy_today` int(11) NULL DEFAULT 0 COMMENT '发言_今日发言',
`fy_time` varchar(30) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT '0' COMMENT '发言_数据更新时间',
`jf` int(11) NULL DEFAULT 0 COMMENT '积分_累计积分',
`jf_today` int(11) NULL DEFAULT 0 COMMENT '积分_今日累计积分',
`jf_today_` int(11) NULL DEFAULT 0 COMMENT '积分_今日发言积分',
`jf_time` varchar(30) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT '0' COMMENT '积分_数据更新时间',
PRIMARY KEY (`id`) USING BTREE,
UNIQUE INDEX `idx_pd_id`(`pd_id`) USING BTREE
) ENGINE = InnoDB AUTO_INCREMENT = 20 CHARACTER SET = utf8 COLLATE = utf8_general_ci ROW_FORMAT = COMPACT;
SET FOREIGN_KEY_CHECKS = 1;
{/collapse-item} {/collapse}
接下来在root_data
表中将机器人id和key填写上去,这个1就是config配置的启动机器人id,你要新增用户数据就在pd_user这张表新增你需要的字段就好了,新增后记得在文件mysql/user.py也进行相应的配置
这样的话数据库就配置好了
然后我们使用pycharm导入我们的开源项目文件,点开config.py配置文件,将数据库的账号密码等填写上去即可,然后点开main.py运行看看能不能正常运行即可,如果没问题就可以开始在 intents/intent.py
内编写你所需的功能啦
1.main.py 运行文件,用于链接数据库和事件分发,但是注意如果你的机器人是公域请将这个全部消息事件订阅去除,需要新增事件订阅都在此处新增即可
2.mysql/user.py目录 用户配置文件,如果你想要新增用户的配置可以在此处新增,然后在updata里和数据库里也新增好就可以了
3.intens/inten.py 这里就是所有事件消息的处理了,你可以在此处编写你需要新增的功能指令等,我也写了部分示例在里面