基于 go-cqhttp 开发的 SSPU的QQ机器人小助手
和泉妃爱QQ校园小助手
✨ 基于 go-cqhttp 以及 Python + MysQL 实现 ✨
Hiyori, a cute QQ Robot is used for SSPU Auto deportReport and the lecture infomation from the second class , developped by Python + MySQL( Based on go-cqhttp
开源地址:和泉妃爱QQ小助手
功能
- 上海第二工业大学 每日一报 自动打卡 ( 会自动汇报账号池内的用户, 并提供 在QQ内 每日定时自动汇报结果功能
- 上海第二工业大学 第二课堂讲座最新信息的 即时性监听 ( 只要有新讲座就会@你/全体成员 同时你也可以主动问她有多少个正在进行的讲座
- 日常看setu / HOMO图
- 食堂随机饭菜推荐
- 让你拥有一个随时可以和你互动的可爱伊抹多 陪你一起度过四年孤寡的校园生活
- 一个妃爱酱监管的小物联网系统 (如果你的HTTP服务器是搭建在树莓派或一些支持Python 环境的 嵌入式开发板上的话的话)
和泉·妃爱酱 的 指令-文档
注:1. 命令是指 双引号内部那些,双引号不要加
2. 所有指令必须@和泉·妃爱酱 才能识别
(一) 专有命令
语法: “cmd- "+ “指令”
命令指令集:
- “健康打卡_查询指令”
- “健康打卡_手动打卡”
- “开启R18模式”(密码可以自行设置)
- “涩图”
- “HOMO图”
- “劝学”
- “添加权限用户”(关闭)
(二) 妃爱酱特性 (暗示:你可以问她)
- 和欧尼酱一样喜欢摆烂
- 有时候会去学校食堂里头吃些好吃的, 所以知道些好吃的菜
- 知道 所有 正在进行的 第二课堂讲座 的 消息 (快问她!
- 并且 只要有 新出来的 第二课堂讲座 她就会@全体
- 鉴于学校政策,每日一报凌晨自动打卡功能临时关闭了( 虽然感觉马上又会要用到
- 有点 homo 和 小坏
使用前所需的运行环境:
- 你需要一个Python的开发环境 以及 MySQL云/本地数据库服务器
- requirements 内的必要运行库
- go-cqhttp: 用来监听QQ的HTTP服务器 (如果你想扩展更多功能的话,可以参照它的官方文档)
- 符合你自己谷歌游览器的驱动版本 --> chromedriver ( 这里已经提供了一个适合Window系统的 谷歌游览器driver )
还是不懂运行环境的安装? ----> 没关系 这里给你详细说明:
- Python安装 和MySQL数据库搭建 —> 不解释了
- requirements内运行库安装:
打开你的cmd / Linux终端:
pip3 install -r requirements.txt
- go-cqhttp:
这里简要介绍一下 该项目是使用Python的 套接字/Requests 实现监听127.0.0.1:5701
端口 来控制QQ机器人
# 基于go-cqhttp 的 Socket 通信
ListenSocket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
ListenSocket.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1)
ListenSocket.bind(('127.0.0.1', 5701))
ListenSocket.listen(100)
go-cqhtt下载: https://docs.go-cqhttp.org/
如果你想扩展妃爱酱
的功能,或者自定义更多的新花样的话 或者建立一个属于你自己的QQ机器人的话 可以具体用法参照文档:go-cqhtt官方文档
- chromedriver:
首先,你需要确认你的谷歌游览器版本-以及系统:
然后去 chromedriver国内镜像 下载适合你系统 和 谷歌版本的 谷歌驱动
好!正式进入使用介绍:
使用教程:
- 在
API.py
内配置 校园账号-用户池 写入所有你想要自动打卡的用户信息(会自动汇报完账号池内所有的账号)
# 二工大 用户池 ---------------> 字面意思 那个 假期 / 在校 (其实都无所谓的)
SSPU_AccountData_Holiday = [{"账号": "20211145140", "密码": "hengheng@1145141919810","地址": ["上海", "上海市", "浦东新区", "金海路2360号上海第二工业大学"]}]SSPU_AccountData_SchoolDay = [{"账号": "20211145140", "密码": "hengheng@1145141919810","地址": ["上海", "上海市", "浦东新区", "金海路2360号上海第二工业大学"]}]
- 同样, 在
API.py
里头 指定QQ内 每日汇报的QQ群:
QQ_Group = xxxxxxx
- 在本地/服务器搭建好 MySQL数据库环境 ----> 这里存储了 能够使用
妃爱酱
的使用权限 的 用户/群
这里使用的是MySQL语言,创建数据库结构:
create table QQ_Num (number BIGINT, msg_type VARCHAR(20));
然后 在 你的MySQL相关数据库的表内加入 你想要的QQ用户
参数说明:
number
: QQ群号/个人QQ号
msg_type
: private
( 个人QQ )/ group
( QQ群 )
然后在AuthorityDB_mysql.py
内 配置你的数据库接口:
# 你的数据库和表名
db = ""
db_table = ""
· 注:这里默认是使用本地数据库接口,若你使用的是云服务器的话可以自行配置 Host 成你的云数据库服务器的IP
这时候 可以开启go-cqhttp服务器了。
配置好go-cqhttp设置, 然后去你的终端go-cqhttp
设置凌晨自动打卡 + 每日早自动汇报签到结果
如果你是Linux 或者 MacOS系统的话, 推荐使用crontab
:
在你的Linux终端:crontab -e
设置你的 crontab 任务:
SSPU_AutoCheck.py
和report_Server.py
和Lec_second_class.py
(crontab 语法)每五分钟执行 */5 * * * * 每小时执行 0 * * * * 每天执行 0 0 * * * 每周执行 0 0 * * 0 每月执行 0 0 1 * * 每年执行 0 0 1 1 *
如果你不想自己设置的话,也可以用下面的:
进入 crontab 定时管理 设定一个log 重定向你的脚本到这个log上用于接收执行日志 (注:鉴于学校政策,每日一报凌晨自动打卡功能临时关闭了( 虽然感觉马上又会要用到)
#2 1-10/1 * * * /usr/bin/python3 /home/pi/Python_Crawler/SSPU_AutoCheck.py >> ~/dailyReport.log #30 7 * * * /usr/bin/python3 /home/pi/Python_Crawler/SSPU_AutoCheck.py >> ~/dailyReport.log #30 4 * * * /usr/bin/python3 /home/pi/Python_Crawler/SSPU_AutoCheck.py >> ~/dailyReport.log #*/10 5 * * * /usr/bin/python3 /home/pi/Python_Crawler/SSPU_AutoCheck.py >> ~/dailyReport.log #*/10 6 * * * /usr/bin/python3 /home/pi/Python_Crawler/SSPU_AutoCheck.py >> ~/dailyReport.log #*/10 7 * * * /usr/bin/python3 /home/pi/Python_Crawler/SSPU_AutoCheck.py >> ~/dailyReport.log #0 7 * * * /usr/bin/python3 /home/pi/Python_Crawler/report_Server.py #15 7 * * * /usr/bin/python3 /home/pi/Python_Crawler/report_Server.py * */2 * * * /usr/bin/python3 /home/pi/Python_Crawler/Lec_second_class.py
Q: 你问为什么 要设置那么多脚本执行?
A: 因为我用是树莓派啊。。。所以脚本执行有时候会卡死,为了安全起见当然多设几个 ( 反正学校又没有反爬开启go-cqhttp 服务器,打开终端执行界面 cd 到该项目文件夹:
pyhon3 main.py
自定义你的功能
- 图片API
API.py
你可以在这里定义属于你自己的 se (HO) tu (MO) 连接 - 如果你不是二工大的学生 但是也想用这个的话 你可以在
SSPU_AutoCheck.py
里编写 你的自动打卡程序 - 如果你想给妃爱酱自定义更多的 talk 的话 你可以在
continue_Server.py
里的def talk(self, recv, num):
方法里加入 你想要的 感兴趣content continue_Server.py
也包含了现有的机器人的命令指令方法 你可以根据你自己的需求来增加或者修改,甚至可以完全自定义成属于你自己的QQ机器人- 如果你觉得使用数据库来进行权限赋予 太麻烦, 你可以将
self.QQ_num
和self.QQ_numType
直接改成你想要的 QQ和QQ类型,参数详见上方数据库建立的那两个 - 如果你是树莓派(或者其他嵌入式处理器)并且想通过QQ实现一些建议的物联网联动,你参考IO控制文件夹 和 已有的开灯关灯命令。
基于 go-cqhttp 开发的 SSPU的QQ机器人小助手相关推荐
- 【C51开发应用】基于C51单片机开发的循迹灭火机器人
基于C51单片机开发的循迹灭火机器人 一.作品摘要 二.系统设计步骤 三.方案设计 3.1 小车主体设计 3.1.1 购买玩具小车进行改装 3.1.2 自己设计小车主体结构 3.2 电 ...
- 物联网开发实战:手把手教你开发一款久坐提醒小助手
大家好,我是机灵鹤. 最近研究开发了一个物联网 IoT 小项目--久坐提醒 / 喝水提醒小助手. 1. 项目介绍 本项目实现了一个久坐提醒和喝水提醒的小助手,在检测到连续工作较长时间之后,会打印纸条, ...
- Bwsaas框架基于Thinkphp6.x开发的微信公众号,小程序,app,H5等多端打通的框架
完善bwsaas框架并开源原生小程序商业版本前端应用 新增 1插件安装升级,安装平台系统插件(type=admin_system)时可同时添加多个角色组(平台系统功能+租户系统功能),需要在group ...
- 从0到100: 基于微信云开发的驾校预约学车小程序
背景 随着机动车逐渐走进寻常百姓家中,学车也随之被人们提上了日程,这使得汽车驾驶培训行业得到迅猛发展.移动互联网技术的广泛应用,使手机约车成为可能,如何合理地分配已有资源,提高资源利用率,增强驾校服务 ...
- 基于百度UNIT的微信智能问答聊天机器人小程序
微信聊天机器人小程序 方法 人人都能拥有的聊天小程序 登录百度ai开放平台,申请百度unit智能聊天机器人,获取ak和sk密钥. 将密钥复制到chat.js对应处即可. 功能 可以进行闲聊,天气查询, ...
- JAVA + 酷Q开发人工智能QQ机器人
原文地址: https://www.i847.cn/article/12.html 偶然机会,团队要开发一个项目异常自动发QQ的功能,于是研究了一下酷Q.因为腾讯不再提供支持,暂时除了酷Q之外的其他的 ...
- 开发 mirai QQ机器人起步教程
前言 虽然该文最终是达到以python开发mirai机器人的目的,但起步教程,尤其是环境配置上仍然有大量的相同操作,对其他编程语言仍有借鉴之处 假设你已经安装好了 Java.Python等运行必须的环 ...
- 基于微信云开发的微信小程序之搜索功能的实现
文章目录 搜索功能的设计 代码逻辑 页面设计 效果展示 搜索功能的设计 功能描述: 该模块主要是基于云开发实现小程序搜的搜索功能.如果搜索框输入为空或直接点击搜索按钮,显示对应弹窗:如果搜索框输入内容 ...
- 万字长文保姆级教你制作自己的多功能QQ机器人
转载请注明出处:小锋学长生活大爆炸(https://xfxuezhang.blog.csdn.net/) 若发现存在部分图片缺失,可以访问原文:万字长文保姆级教你制作自己的多功能QQ机器人 - 小锋学 ...
- 第十代晨风机器人_第十代QQ机器人下载_第十代QQ机器人 v20180102 官方版 - 西西下载...
官方介绍: 第十代QQ机器人是对QQ进行功能扩展的程序,在第十代机器人软件登录QQ号码后可以按照预先设定的一些指令自动完成某些任务,例如与好友进行交流,执行一些数据交互任务,实现QQ与网站的交互,常用 ...
最新文章
- iOS 项目中用到的一些开源库和第三方组件
- 偏心率e用于描述某一轨道与圆轨道的区别
- Chord算法实现具体
- 列一下OOP规约,编程的时候共勉!别踏坑!
- 彻底理解Python中的yield
- python 安卓app开发环境搭建_基于react-native的APP开发环境配置
- jQuery Mobile 学习资料
- sift计算描述子代码详解_浅谈SIFT特征描述子
- ztree 自定义参数_jQuery Ztree基本用法
- mysql闪现_css,javascript_点击按钮出现弹窗,弹窗只是闪现了一下,为什么没有一直出现?,css,javascript - phpStudy...
- wamp mysql 用户名_wamp的mysql设置用户名和密码
- ZBrush中的法线贴图你知道吗?
- 小程序发布新版本后,部分用户手机白屏
- 为什么中国没有诞生世界流行的编程语言?
- 程序员面试需要带身份证和毕业证原件吗
- Word排版——毕业论文专业排版5——目录
- flume系列之:监控JMX reporter
- 程序设计所遵循的一般步骤
- 推荐下载Adobe Reader(PDF阅读器)9.0 简体中文版
- jsp执行原理(详解)