Codeforces、牛客、AtCoder平台比赛查询,ACMer 必备
Project description
📖 介绍
对于每一个 ACMer 来说,参加编程竞赛是必不可少的,这个插件实现了 Codeforces、牛客竞赛、AtCoder 这三个主流的编程竞赛平台的比赛查询和播报。
除了简单的指令外,它支持每天定时发送三种比赛的信息。
查询的结果会存到列表里,以减少网站爬取的次数。
由于 AtCoder 网站没提供比赛信息的 API,因此是直接对网页进行爬取的,代码中是爬取两个比赛,你可以自己修改得更多。
除了爬取比赛信息这一基本功能外,它还支持 Codeforces 平台一些信息的查询,譬如监视某个 id 的 rating 变化情况,具体指令将在下文介绍。
为什么取 cp-broadcast 这个英文名呢?因为竞赛性编程的英文是:Competitive Programming,直接拿来做名字感觉太长了,因此我把它写成了缩写,broadcast 是播报的意思,因此就用 cp-broadcast 来当名字了。
插件可能有很多不完善的地方,欢迎大家来提 issue 和 pull requests。
有任何问题可联系QQ:3411907440。
💿 安装
使用 nb-cli 安装
在 nonebot2 项目的根目录下打开命令行, 输入以下指令即可安装nb plugin install nonebot-plugin-cp-broadcast
使用包管理器安装
在 nonebot2 项目的插件目录下, 打开命令行, 根据你使用的包管理器, 输入相应的安装命令pip
pip install nonebot-plugin-cp-broadcast
pdm
pdm add nonebot-plugin-cp-broadcast
poetry
poetry add nonebot-plugin-cp-broadcast
conda
conda install nonebot-plugin-cp-broadcast
打开 nonebot2 项目根目录下的 pyproject.toml
文件, 在 [tool.nonebot]
部分追加写入
plugins = ["nonebot_plugin_cp_broadcast"]
⚙️ 配置
在 nonebot2 项目的.env
文件中添加下表中的必填配置
配置项 | 必填 | 默认值 | 说明 |
---|---|---|---|
cp_broadcast_list | 否 | [ ] | 开启早晨自动播报今日比赛的群聊,填 QQ 群号,注意以字符串形式填入 |
cp_broadcast_botname | 否 | "bot" | 填入你 bot 的名字,在 help 指令下会使用到你的 bot 的名字 |
cp_broadcast_time | 否 | {"hour":"7", "minute":"20"} | 每日在群聊播报比赛信息的时间,默认是早上 7 点 20,你可以在配置文件中按默认值格式修改成你想要的时间 |
cp_broadcast_updatetime | 否 | {"hour":"0", "minute":"0"} | 每天自动更新比赛数据的时间,默认是 0 点 0 分,你可以在配置文件中按默认值格式修改成你想要的时间 |
cp_broadcast_cf_list | 否 | [ ] | 开启 Codeforces 播报功能的群聊,cf监视的相关功能只在指定群聊里发送 |
cp_broadcast_cf_interval | 否 | 10 | 更新 Codeforces 监视信息的时间间隙,默认为 10 分钟 |
该插件依赖 nonebot_plugin_apscheduler 实现定时发送功能,如果你未安装此依赖的话,将无法触发与定时相关的功能。
🎉 使用
指令表
指令 | 权限 | 需要@ | 范围 | 说明 |
---|---|---|---|---|
cf |
群员 | 否 | 群聊 | 发送最近三场 Codeforces 比赛的信息 |
牛客 or nc |
群员 | 否 | 群聊 | 发送最近三场牛客比赛的信息 |
atc |
群员 | 否 | 群聊 | 发送最近两场 AtCoder 比赛的信息 |
today |
群员 | 否 | 群聊 | 发送今天的比赛信息 |
next |
群员 | 否 | 群聊 | 发送今天后的部分比赛信息 |
help |
群员 | 是 | 群聊 | 发送帮助信息 |
update |
群员 | 否 | 群聊 | 手动更新比赛信息 |
cf监视 |
群员 | 是 | 群聊 | 监视某人的 rating 变化 |
cf监视移除 |
群员 | 是 | 群聊 | 移除监视某人的 rating 变化 |
cf监视列表 |
群员 | 是 | 群聊 | 展示已经监视了哪些人 |
cf查询 |
群员 | 是 | 群聊 | 查询对应 id 的相关信息 |
cf排名 |
群员 | 是 | 群聊 | 查询当前监视列表的rating排名 |
效果图
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for nonebot_plugin_cp_broadcast-2.0.0.tar.gz
Algorithm | Hash digest | |
---|---|---|
SHA256 | 260f1c5594d707744f5770daaae5238a100e9877941f6b9e38358fb5a186aad8 |
|
MD5 | 21fec56317174e37a125d977fd2bea0f |
|
BLAKE2b-256 | b83a98f287a0d173dd8fd0f88796f019731955f9b5b3bfbc92f6e6ac9c3024c4 |
Hashes for nonebot_plugin_cp_broadcast-2.0.0-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 27f69f9237c059d751b6b29491df921517e1738e23b618072f72d94a17d04cb7 |
|
MD5 | bd198630d73547cf7df85315857230ec |
|
BLAKE2b-256 | 2bd455dad7da705245872666dc469301321a6bb46622b95878f8753385485bba |