Files
outlookEmailPlus/README.md
T
2026-01-13 20:27:49 +08:00

4.3 KiB
Raw Blame History

Outlook 邮件管理工具

一个功能完整的 Outlook 邮件管理解决方案,支持多种方式读取 Outlook 邮箱邮件,并提供 Web 界面进行邮箱账号管理和邮件查看。

✨ 功能特性

邮件读取方式

本工具支持三种方式读取 Outlook 邮箱邮件:

  1. 旧版 IMAP 方式 - 使用 outlook.office365.com 服务器
  2. 新版 IMAP 方式 - 使用 outlook.live.com 服务器
  3. Graph API 方式 - 使用 Microsoft Graph API

Web 应用功能

  • 🔐 登录验证 - 密码保护的 Web 界面
  • 📁 分组管理 - 支持创建、编辑、删除邮箱分组
  • 📧 多邮箱管理 - 批量导入和管理多个 Outlook 邮箱账号
  • 📬 邮件查看 - 查看收件箱邮件列表和邮件详情
  • 📤 导出功能 - 支持按分组导出邮箱账号信息
  • 🎨 现代化 UI - 简洁美观的用户界面

📋 系统要求

  • Python 3.8+
  • 网络连接(访问 Microsoft 服务)

🚀 快速开始

1. 安装依赖

pip install -r requirements.txt

2. 运行 Web 应用

python web_outlook_app.py

启动后访问:http://127.0.0.1:5001

默认登录密码:admin123(可在 web_outlook_app.py 中修改 LOGIN_PASSWORD 变量)

3. 运行命令行测试工具

python outlook_mail_reader.py

📁 项目结构

outlookEmail/
├── outlook_mail_reader.py    # 命令行邮件读取测试工具
├── web_outlook_app.py        # Flask Web 应用
├── requirements.txt          # Python 依赖
├── README.md                 # 项目说明文档
└── templates/
    ├── index.html            # Web 应用主页面
    └── login.html            # 登录页面

📖 使用说明

导入邮箱账号

在 Web 界面中,点击「导入邮箱」按钮,按以下格式输入账号信息:

邮箱----密码----client_id----refresh_token

支持批量导入,每行一个账号。

获取 OAuth2 凭证

要使用本工具,您需要获取以下 OAuth2 凭证:

  1. Client ID - Microsoft Azure 应用注册的客户端 ID
  2. Refresh Token - OAuth2 刷新令牌

获取方式:

  1. 在 Azure Portal 注册应用
  2. 配置适当的 API 权限(Mail.Read、IMAP.AccessAsUser.All 等)
  3. 通过 OAuth2 授权流程获取 refresh_token

API 端点

Web 应用提供以下 API 端点:

端点 方法 描述
/api/groups GET 获取所有分组
/api/groups POST 创建分组
/api/groups/<id> PUT 更新分组
/api/groups/<id> DELETE 删除分组
/api/accounts GET 获取所有账号
/api/accounts POST 添加账号
/api/accounts/<id> GET 获取账号详情
/api/accounts/<id> PUT 更新账号
/api/accounts/<id> DELETE 删除账号
/api/emails/<email> GET 获取邮件列表
/api/email/<email>/<message_id> GET 获取邮件详情
/api/groups/<id>/export GET 导出分组邮箱
/api/accounts/export GET 导出所有邮箱

⚙️ 配置说明

Web 应用配置

在 web_outlook_app.py 中可以修改以下配置:

配置项 默认值 说明
LOGIN_PASSWORD admin123 登录密码
DATABASE outlook_accounts.db SQLite 数据库文件
IMAP_SERVER_OLD outlook.office365.com 旧版 IMAP 服务器
IMAP_SERVER_NEW outlook.live.com 新版 IMAP 服务器
IMAP_PORT 993 IMAP 端口

命令行工具配置

在 outlook_mail_reader.py 中配置:

配置项 说明
EMAIL 邮箱地址
PASSWORD 邮箱密码
CLIENT_ID OAuth2 客户端 ID
REFRESH_TOKEN OAuth2 刷新令牌
PROXY 代理地址(可选)

🔒 安全说明

  • 请妥善保管您的 OAuth2 凭证
  • 建议修改默认登录密码
  • 数据库文件包含敏感信息,请注意保护
  • 生产环境建议使用 HTTPS

📝 依赖说明

  • Flask >= 3.0.0 - Web 框架
  • Werkzeug >= 3.0.0 - WSGI 工具库
  • requests >= 2.25.0 - HTTP 请求库

🤝 贡献

欢迎提交 Issue 和 Pull Request!

📄 许可证

MIT License