📊 短剧数据抓取API服务

基于Flask的RESTful API,支持CORS跨域和用户认证

🔑 用户认证信息

通用密码: (所有用户都可用)

测试用户:

注意: 当前使用数据库用户管理,用户数据持久化存储

📡 基本接口

GET /api/health - 健康检查
GET /api/test_db - 测试数据库连接
GET /api/system/info - 获取系统信息

🔐 用户认证接口

POST /api/auth/register - 用户注册
POST /api/auth/register
Content-Type: application/json
{
  "username": "newuser",
  "password": "password123",
  "confirm_password": "password123"
}
POST /api/auth/login - 用户登录
POST /api/auth/login
Content-Type: application/json
{
  "username": "admin",
  "password": ""
}
GET /api/auth/check - 检查登录状态
GET /api/auth/userinfo - 获取当前用户信息 需登录
POST /api/auth/change_password - 修改密码 需登录
POST /api/auth/logout - 用户注销 需登录
GET /api/admin/users - 管理员获取用户列表 需管理员
PUT /api/admin/user/{id}/status - 管理员更新用户状态 需管理员

🔄 抓取接口

GET /api/test_crawl?page=0 - 测试抓取单页数据(不保存)
POST /api/crawl/single - 抓取单页数据并保存
POST /api/crawl/batch - 批量抓取多页数据
POST /api/crawl/async - 异步批量抓取(后台执行)

📊 数据查询接口

GET /api/dramas/stats - 获取短剧统计信息
GET /api/dramas/list - 获取短剧列表
GET /api/dramas/{book_id} - 获取单个短剧详情

🚀 快速开始

# 1. 用户注册
curl -X POST "http://localhost:3000/api/auth/register" \
-H "Content-Type: application/json" \
-d '{"username":"newuser","password":"password123","confirm_password":"password123"}'

# 2. 用户登录
curl -X POST "http://localhost:3000/api/auth/login" \
-H "Content-Type: application/json" \
-d '{"username":"admin","password":""}'

# 3. 测试抓取
curl "http://localhost:3000/api/test_crawl?page=0"

# 4. 批量抓取
curl -X POST "http://localhost:3000/api/crawl/batch" \
-H "Content-Type: application/json" \
-d '{"start_page": 0, "end_page": 2}'

# 5. 查询数据
curl "http://localhost:3000/api/dramas/list?page=1&page_size=10"

⚠️ 注意事项

1. 用户数据存储在数据库user表中,重启服务后数据不会丢失

2. 注册成功后会自动登录

3. 用户名只能包含字母和数字,长度至少3位

4. 密码长度至少6位

5. 支持通用密码

6. 系统启动时会自动检查并创建user表(如果不存在)