2个版本
| 0.1.3 | 2021年3月22日 |
|---|---|
| 0.1.2 | 2021年3月14日 |
#485 in 身份验证
70KB
1.5K SLoC
咖啡因

咖啡因是一个CLI工具,允许您从终端或自定义脚本中轻松与Codeforces API交互。
用法
caffeine [FLAGS] [OPTIONS] [SUBCOMMAND]
可以使用 caffeine --help 列出选项。
安装
使用 cargo 包管理器
cargo install caffeine-cf
手动编译
要手动编译,首先克隆此仓库。
git clone https://github.com/thud/caffeine
然后,您可以使用 cargo run 来构建和运行。例如
cargo r -- user info thud
描述
此实用程序使用 codeforces-api crate 允许您从命令行或自定义脚本中与 Codeforces API 交互。
功能
- 完全访问Codeforces平台提供的每个API方法。
- 下载任何给定问题的测试用例。
- 将解决方案提交给任何给定问题,可以是文件或
stdin。 - 在配置文件中存储默认设置。
- 在文件中存储登录详情,以便更容易使用。
身份验证
截至当前版本的 codeforces-api crate,每次请求都需要API密钥和密钥。生成这些信息的说明可以在 此处(在授权部分)找到。要向 caffeine 提供您的密钥/密钥,您需要运行 caffeine login 或通过使用 --key/-k 和 --secret/-s 标志(参见 caffeine help)将它们作为参数提供。建议您使用 cargo login 而不是CLI标志,因为您的密钥和密钥可能会出现在您的shell命令历史中。
提交解决方案
解决方案是通过使用 headless_chrome 包来提交的。这需要您安装一个基于 Chromium 的浏览器才能正常工作。如果您的浏览器没有被 headless_chrome 自动检测到,那么在运行之前,您应该尝试设置 CHROME 环境变量。例如,对于 Brave 浏览器,您可能需要运行 export CHROME=/usr/bin/brave。
提交解决方案还需要您提供用户名和密码。您可以使用 caffeine login 或更明确地使用 --handle/-H 和 --password/-p 标志来提供这些信息。
示例
有关 caffeine 的示例用例,请参阅 cpsetup(主要符合 POSIX 规范)shell 脚本。它提供了一个全面的示例,说明如何使用 caffeine 在脚本中提供大量有用的功能。
依赖关系
~18–34MB
~574K SLoC