Loading... 本项目是一个在群里可以通知打codeforces、牛客、AtCoder、LeetCode的qq机器人项目,基于<a href="https://github.com/INGg/ACM_Contest_QQbot" target="__blank"> ACM_Contest_QQbot</a>修改 ## 项目地址 > 我的好基友[guke1024](https://github.com/guke1024)的项目,目前已经在ACM实验室稳定运行几个月了,喜欢的话给个star https://github.com/guke1024/ACM_QQbot ## 本项目与原项目的区别 1. 将 codeforces 、牛客、atc、LeetCode的比赛以json形式保存在本地; 2. ~~把本校ACM实验室成员的 codeforces rating 数据以json的形式保存在本地;~~ 将添加的cf用户rating数据以json形式保存到本地,同时将不同群添加的cf用户进行分离,每个群在进行cf总查询时仅显示本群所有cf用户信息 3. 把本校所有牛客用户的牛客 rating 数据以 json 形式保存在本地。 4. 将所有定时任务放入一个函数统一处理 5. 拥有今日人品功能 6. **不拥有**随机cf 7. 其他类似功能部分有所出入 提供定时/手动更新本地数据功能,仅在更新时与cf、牛客、atc、LeetCode进行交互,加速用户使用机器人时的查询速度并降低了被反爬虫的概率。 ## 功能介绍 - next -> 查询最近一场比赛 - today -> 查询今天比赛 - cf(不区分大小写)/牛客/atc(不区分大小写)/lc(不区分大小写) -> 查询最近三场cf/牛客/atc/lc比赛 - 查询cf/牛客/atc分数id -> 查询对应id的cf/牛客/atc分数(已解决牛客模糊查询导致结果不准确的问题) - 更新cf/牛客分数 -> 更新本地所有用户的cf/牛客分数 - 添加cf用户id -> 添加对应id的cf用户及其相关信息到本地json文件中 - 删除cf用户id -> 删除本地json文件中的cf用户 - 随机蕊神/来只蕊神 -> 随机蕊神语录 - 来只清楚 -> 随机qcjj/固定群聊其他人的语录 - 添加蕊神/添加清楚 -> 使用该命令回复图片即可添加到本地图库中(已做权限处理) - setu/涩图 -> 涩图 - 每天定时发送当天比赛 - cf、牛客、atc、LeetCode比赛前十五分钟提醒报名参加 - cf的rating分群管理,不同群之间cf总查询的结果只会是当前群曾添加的cf用户 - 订阅cf/牛客/lc/atc -> 在这些比赛开始前15分钟发送报名定时提醒,cf和牛客还有准时的上号提醒 - 订阅每日提醒 -> 每天早上8点发送当日比赛 - 取消订阅cf/牛客/lc/atc/每日提醒 -> 取消这些订阅 ## 一些截图 ![Codeforce比赛通知][1] ![每日比赛通知][2] ![CF分数查询][3] ## 部署方法 1. 环境配置 * 请参照YiriMirai的教程环境配置:https://yiri-mirai.wybxc.cc/tutorials/01/configuration * 建议更新Mirai到最新版本,使用命令`./mcl -u` 2. 使用Mirai登陆qq(如果是linux服务器,参照官网教程,如何挂起而不退出:https://yiri-mirai.wybxc.cc/tutorials/02/linux) 3. clone到本地或者服务器中 ~~~shell git clone git@github.com:INGg/ACM_Contest_QQbot.git ~~~ 4. 修改`main.py`中bot的qq号为你自己的qq号 ~~~python bot = Mirai( qq=*****, # 改成你的机器人的 QQ 号 adapter=WebSocketAdapter( verify_key='yirimirai', host='localhost', port=8080 ) ) hdc = HandlerControl(bot) # 事件接收器 ~~~ 4. 安装对应的库 ~~~shell pip3 install httpx pip3 install yiri-mirai pip3 install python-dateutil pip3 install yiri-mirai-trigger pip3 install requests pip3 install lxml pip3 install apscheduler pip3 install loguru ~~~ 5. 部署成功后,将yirimirai部署教程中的net.mamoe.mirai-api-http文件夹下的setting.yml里的端口号改成7275 6. 创建oj_json文件夹,在里面创建**cf_contest.json**、**cf_rating.json**、**lc_contest.json**、**nc_contest.json**、**nc_rating.json**、**subscribe.json**等文件 7. 在cf_rating.json文件中添加以下内容 ```json { "all_rating": {} } ``` 5. 在subscribe.json文件中添加以下内容 ```json { "cf": {}, "\u725b\u5ba2": {}, "lc": {}, "atc": {}, "today": {} } ``` > 部署方式来自: > https://github.com/INGg/ACM_Contest_QQbot > https://github.com/guke1024/ACM_QQbot [1]: https://www.kezez.com/usr/uploads/2022/06/4051834713.png#vwid=525&vhei=568 [2]: https://www.kezez.com/usr/uploads/2022/06/759810719.png#vwid=622&vhei=758 [3]: https://www.kezez.com/usr/uploads/2022/06/994392488.png#vwid=498&vhei=418 © 允许规范转载 打赏 赞赏作者 支付宝微信 赞 3 如果觉得我的文章对你有用,请随意赞赏
8 条评论
厉害了 ,QQ机器人
哈哈,还好
不可以sese
哈哈哈
色图功能不错 :&(蛆音娘_偷看)
怎么都在关注这个功能 ::(滑稽)
::(滑稽) "setu/涩图 -> 涩图" 可真刑
::(滑稽)