xiaohongshu-mcp-server
Version:
小红书 MCP 服务器 - 支持评论发布、内容获取等功能
143 lines (113 loc) • 3.89 kB
Markdown
# 小红书MCP 登录系统使用指南
## 🎯 功能特性
### 解决的核心问题
- **登录状态经常失效**:需要频繁重新扫码登录
- **浏览器重启过于频繁**:导致会话中断
- **缺乏自动恢复机制**:每次都需要手动处理
### 智能登录管理
- **自动恢复**:优先尝试从保存的状态恢复登录
- **无缝体验**:其他功能自动检查并恢复登录状态
- **持久化存储**:登录状态保持30天
- **安全机制**:Cookie自动备份,状态验证
## 🚀 使用方法
### 首次登录
```python
# 通过MCP工具调用
await login()
```
- 会自动打开浏览器并引导你完成扫码登录
- 登录成功后自动保存状态
### 日常使用
```python
# 直接使用其他功能,无需先登录
await search_notes("美妆") # 自动检查和恢复登录
await publish_note(...) # 自动检查和恢复登录
await post_comment(...) # 自动检查和恢复登录
```
### 重新登录(极少需要)
```python
await login() # 会自动清理旧状态并重新登录
```
## 🔧 技术实现
### 智能登录流程
```
登录请求 → 尝试自动恢复 → 成功✅ | 失败❌ → 引导手动登录 → 保存状态
```
### 持久化配置
- **浏览器数据目录**:`./browser_data/`(项目根目录)
- **登录状态文件**:`./data/login_state.json`
- **Cookie备份**:`./data/cookie_backups/`
### 持久化策略
- **状态保持**:最长30天
- **状态检查**:每5分钟自动检查一次
- **Cookie备份**:每30分钟自动备份
- **重启限制**:每小时最多重启浏览器3次
## 🛡️ 安全特性
### 频率限制
- 每小时最多重启浏览器3次
- 防止过度资源消耗
### 状态验证
- 定期验证登录状态的有效性
- 自动清理过期状态
### 备份机制
- 自动备份Cookie数据
- 保留最近5个备份文件
## 📂 文件结构
```
redbook_mcp/
├── browser_data/ # 浏览器数据目录(持久化)
│ ├── Default/
│ │ ├── Cookies # 登录Cookie
│ │ ├── Local Storage/ # 本地存储
│ │ └── ...
├── data/
│ ├── login_state.json # 登录状态文件
│ ├── cookie_backups/ # Cookie备份目录
│ └── logs/ # 日志文件
└── src/
└── infrastructure/
└── browser/
├── browser.py # 浏览器管理器
└── login_manager.py # 登录状态管理器
```
## ⚠️ 注意事项
### 数据目录保护
- 不要删除 `browser_data/` 目录
- 这里保存了你的登录信息
### 状态过期
- 登录状态默认保持30天
- 过期后需要重新扫码登录
### 多账号使用
- 当前设计为单账号使用
- 如需切换账号,请先清除登录状态
## 🔧 故障排除
### 登录问题
```python
# 如果遇到任何登录相关问题,只需重新登录
await login()
```
系统会自动:
- 清理旧的登录状态
- 重新建立连接
- 保存新的登录状态
### 浏览器启动问题
- 关闭其他Chrome实例
- 重启程序后重试
- 必要时重启计算机
## 📈 效果对比
### 优化前
- ❌ 每次使用都可能需要扫码
- ❌ 浏览器频繁重启(30秒检查)
- ❌ 需要手动管理登录状态
- ❌ 多个状态管理工具
### 优化后
- ✅ 30天内自动保持登录
- ✅ 浏览器稳定运行(5分钟检查)
- ✅ 全自动状态管理
- ✅ 专注核心功能
## 🎉 核心优势
1. **减少90%的登录操作**:大部分时候都能自动恢复
2. **提高系统稳定性**:减少不必要的浏览器重启
3. **简化用户操作**:专注于小红书核心功能
4. **智能错误恢复**:自动处理各种异常情况
现在你可以专注于小红书的核心操作,登录问题已经彻底解决!