httpx 异步并发请求,快速获取双站数据git clone https://cnb.cool/wwvo/leetcode_daily.git
cd leetcode_daily
uv sync
uv run leetcode-daily
| 命令 | 说明 |
|---|---|
uv run leetcode-daily | 获取中英文站每日一题(默认) |
uv run leetcode-daily --cn | 仅获取中文站 |
uv run leetcode-daily --en | 仅获取英文站 |
uv run leetcode-daily -o ./my-data | 指定输出目录(默认 data) |
uv run leetcode-daily -v | 启用详细日志 |
data/ └── 202602/ ├── 2026-02-28_1680_concatenation-of-consecutive-binary-numbers_cn.md └── 2026-02-28_1680_concatenation-of-consecutive-binary-numbers_en.md
文件按 {YYYYMM} 年月分目录存放,文件名格式为 {日期}_{题号}_{slug}_{cn|en}.md。
每个生成的 Markdown 文件包含:
src/leetcode_daily/ ├── __init__.py # 版本号定义 ├── api.py # LeetCode GraphQL API 封装(中文站 + 英文站) ├── main.py # CLI 入口,参数解析与异步调度 └── storage.py # Markdown 生成与本地文件存储 tests/ ├── test_api.py # API 模块单元测试 └── test_storage.py # 存储模块单元测试
# 安装开发依赖
uv sync
# 运行测试
uv run pytest tests/ -v
项目通过 CNB 流水线 实现自动化:
| 包 | 用途 |
|---|---|
| httpx | 异步 HTTP 客户端 |
| markdownify | HTML 转 Markdown |