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