From c7a20d18761dcf37140d1524c9f2c3f0f9b77d20 Mon Sep 17 00:00:00 2001 From: gene-2012 Date: Thu, 1 May 2025 14:47:52 +0800 Subject: [PATCH] Add readme --- README.md | 99 +++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 99 insertions(+) create mode 100644 README.md diff --git a/README.md b/README.md new file mode 100644 index 0000000..d577016 --- /dev/null +++ b/README.md @@ -0,0 +1,99 @@ +# 🧰 luogu-cli – 洛谷命令行工具 + +一个用 Python 编写的命令行工具,用于从 [洛谷(Luogu)](https://www.luogu.com.cn) 下载题目描述、样例输入输出、题解等内容,方便本地学习与练习。 + +--- + +## 📦 功能特性 + +- ✅ `lgcli parse PID`:下载指定题目的题面、样例和题解 +- ✅ `lgcli view PID`:在终端中查看题目描述(支持 Markdown 渲染) +- ✅ `lgcli solution PID`:列出所有题解或查看某一篇详细内容 +- ✅ 使用 `rich` 渲染终端 Markdown,支持彩色样式 +- ✅ 支持打包为单文件 `.exe`(通过 PyInstaller) + +--- + +## 🧩 依赖库 + +确保你已安装以下 Python 包: + +```bash +pip install rich requests beautifulsoup4 python-dotenv +``` + +--- + +## ⚙️ 配置 Cookie + +你需要先登录洛谷官网,并获取以下 Cookie 值填入 `.env` 文件中: + +```env +CLIENT_ID=你的client_id +UID=你的uid +CF_CLEARANCE=你的cf_clearance +C3VK=你的c3vk +``` + +> 注意:这些值可以在浏览器开发者工具的“Application > Cookies”中找到。 + +--- + +## 🚀 使用方式 + +### 1. 下载题目信息 + +```bash +python main.py parse P1145 +``` + +这会创建一个以题目编号命名的目录(如 `P1145/`),包含: +- `P1145.md`:题面描述 +- `samples/`:样例输入输出 +- `solutions/`:题解 Markdown 文件 + +--- + +### 2. 查看题目描述 + +```bash +python main.py view P1145 +``` + +使用 `rich` 在终端中渲染 Markdown 格式的题目内容。 + +--- + +### 3. 查看题解列表或具体内容 + +```bash +python main.py solution P1145 +``` + +列出所有题解标题: + +``` +可用题解: +1. 题解1_xxxxx +2. 题解2_yyyyyy +``` + +查看具体题解内容: + +```bash +python main.py solution P1145 --id 题解1_xxxxx +``` + +--- + +## 🚗 下一步发展 + +- 📝 提交代码 +- 🚩参加比赛 +- ... + +--- + +## 📜 许可证 + +本项目采用 LGPL License。 \ No newline at end of file