python qqbot 简易复读机

本文介绍了一款基于smartQQ的QQBot简易插件,该插件实现了基本的复读功能,当同一消息在三秒内被重复发送超过一次时,机器人将自动复读该消息。更高级的复读功能正在开发中。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

qqbot 简易小插件:
具体的插件用法请访问qqbot github
基于smartQQ的qqbot 已经被弃用

from datetime import datetime
import time

def onQQMessage(bot,contact,member,content):
	if content == '-hello':
		bot.SendTo(contact,'你好我是机器人')
	elif content == '-stop':
		bot.SendTo(contact, '你好我关了哦。')
		bot.Stop()
		
tempWord = ''
tempTime = 0
times = 0
lastContent = ""


def onQQMessage(bot,contact,member,content):
	global tempWord
	global tempTime
	global times
	
	now = time.time()
	print(times)
	if times > 20: #当复读超过20次的时候就不要复读了
		print('times > 10')
		return -1
	elif (now - tempTime) > 3000:
		print('times more  than 3s')
	elif (now - tempTime) <= 3000: #三秒内有人复读则启动复读程序
		
		if(tempWord == content):#当前内容与之前的一份内容一样启动复读
			bot.SendTo(contact,content)
			times += 1
			tempWord = ''
			return
		else:
			tempWord = content
	else:
		print('it wont happen')
	tempTime = float(now)

启动并且注册插件之后,qq机器人就被注入了灵魂,可以实现复读功能了。后续的更为高级的复读功能正在开发中。

### 如何用 Python 编写 QQ 机器人 #### 创建环境与安装依赖库 要开发基于 Python 的 QQ 机器人,首先需要确保已安装兼容的 Python 版本。根据官方文档描述,`botpy` 库支持 `Python3.8+`[^2]。因此建议使用此版本或更高版本。 以下是所需的主要依赖项及其安装方法: ```bash pip install botpy --upgrade ``` #### 配置基础框架 为了实现一个简单的 QQ 机器人功能,可以利用 Flask 或其他轻量级 Web 框架来接收来自 QQ 客户端的消息并作出响应。以下是一个基本示例: ```python from flask import Flask, request import requests app = Flask(__name__) @app.route('/message', methods=['POST']) def callback(): # 获取 POST 请求中的数据 data = request.json # 提取消息发送者的 QQ 号码 sender_qq = data.get('user_id') # 构造回复消息的内容 reply_message = f"你好,{sender_qq}!这是自动回复。" # 调用 API 发送私信 api_url = 'http://127.0.0.1:5700/send_private_msg' payload = { 'user_id': sender_qq, 'message': reply_message, 'auto_escape': False } response = requests.post(api_url, data=payload) return '', 200 if __name__ == '__main__': app.run(port=8080) ``` 上述代码展示了如何通过 HTTP 接口监听消息事件,并向指定用户返回一条简单问候语[^3]。 #### 加载配置文件 (YAML 格式) 如果希望将敏感信息(如服务器地址、端口号等)存储于外部配置文件,则可采用 YAML 来管理这些参数。下面给出加载此类设置的一个例子: ```yaml # config.yaml api_base_url: http://127.0.0.1:5700/ listen_port: 8080 default_reply: "这是一个默认应答模板。" ``` 对应的解析逻辑如下所示: ```python import yaml with open("config.yaml", "r") as file: config_data = yaml.safe_load(file) API_BASE_URL = config_data['api_base_url'] LISTEN_PORT = config_data['listen_port'] DEFAULT_REPLY = config_data['default_reply'] print(f"Loaded configuration:\nBase URL={API_BASE_URL}\nPort={LISTEN_PORT}") ``` 以上片段实现了从 YAML 文件读取必要的运行时变量。 #### 总结 综上所述,构建一个能够正常工作的 QQ 机器人涉及多个方面的工作,包括但不限于选择合适的编程语言(Python)[^1]、搭建后端服务框架(Flask)以及合理运用第三方插件(botpy)等等。只要按照既定流程逐步实施,就能顺利完成目标应用的部署工作。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值