email-pro-optimized

Polar Sponsor
爱发电 赞助
.NET 9.0

高性能邮件工具,支持QQ、Gmail、Outlook;IMAP读取、SMTP发送,OAuth 2.0认证,并发处理,速度比 imap-smtp-email 快4‑5倍。

Email Pro Optimized - 高性能邮件工具

功能概述

Email Pro Optimized - 高性能邮件工具是一项面向实际任务的技能,主要用于快速、高效的邮件管理工具,支持多账号、多提供商、批量处理、并发获取;支持的邮箱类型;

核心要点

  • QQ 邮箱;
  • IMAP/SMTP + 授权码;
  • ✅ 完全支持;

使用与执行

Gmail;OAuth 2.0;Outlook/Live;imap-smtp-email;Email Pro Optimized;10封邮件;1.5-2s;0.3-0.5s;

结果检查与注意事项

100封邮件。它将相关步骤、工具调用和结果整理方式集中到统一流程中,帮助使用者更快完成目标并减少重复操作。从功能定位来看,该技能强调把分散的操作要求整理成清晰、可复用的处理流程,使用户能够围绕既定目标快速准备输入、选择执行方式并获得结构化结果。实际使用前应先确认任务范围、数据来源、运行环境、必要权限和关键参数,再依据技能说明逐步执行;若输入条件不完整,应先补齐信息或采用保守配置,避免因错误假设导致结果偏离需求。执行过程中需要关注工具调用是否成功、接口或依赖是否可用、输出格式是否符合预期,并对异常提示、缺失字段和边界情况进行处理;涉及批量任务时,还应保存进度,避免中断后重复操作。该技能适合用于一次性任务,也可以接入自动化工作流,与其他技能或上层代理配合完成更完整的业务链路;在组合使用时,应明确每一步的输入输出关系,并避免不同步骤之间出现参数冲突。

Email Pro Optimized - 高性能邮件工具

快速、高效的邮件管理工具,支持多账号、多提供商、批量处理、并发获取。

支持的邮箱类型

邮箱 认证方式 状态
QQ 邮箱 IMAP/SMTP + 授权码 ✅ 完全支持
Gmail OAuth 2.0 ✅ 完全支持
Outlook/Live OAuth 2.0 ✅ 完全支持

性能对比

指标 imap-smtp-email Email Pro Optimized
10封邮件 1.5-2s 0.3-0.5s
100封邮件 15-20s 2-3s
1000封邮件 150-200s 15-20s
并发处理 ❌ ✅
连接复用 ❌ ✅
多提供商 ❌ ✅

快速开始

1. 列出账户

python3 scripts/email-pro.py list-accounts

2. 检查邮件(QQ 邮箱)

# 检查最近 10 封
python3 scripts/email-pro.py --account qq_3421 check --limit 10

# 仅检查未读
python3 scripts/email-pro.py --account qq_3421 check --unread

# 使用其他账户
python3 scripts/email-pro.py --account qq_136 check --limit 5

3. 授权 Gmail 邮箱

# 自动授权 Gmail
python3 scripts/authorize.py gmail --name gmail_qiao

# 或使用默认配置
python3 scripts/authorize.py gmail

4. 授权 Outlook 邮箱

# 自动授权(已配置 Azure 信息)
bash scripts/authorize-outlook.sh

# 或手动授权
python3 scripts/authorize.py outlook 
  --client-id "YOUR_CLIENT_ID" 
  --client-secret "YOUR_CLIENT_SECRET" 
  --tenant-id "YOUR_TENANT_ID" 
  --name "outlook_live"

5. 检查邮件(Gmail/Outlook)

# Gmail
python3 scripts/email-pro.py --account gmail_qiao check --limit 10

# Outlook
python3 scripts/email-pro.py --account outlook_live check --limit 10

6. 发送邮件

# QQ 邮箱
python3 scripts/email-pro.py --account qq_136 send 
  --to "recipient@example.com" 
  --subject "Hello" 
  --body "Test email"

# Gmail
python3 scripts/email-pro.py --account gmail_qiao send 
  --to "recipient@example.com" 
  --subject "Hello" 
  --body "Test email"

# Outlook
python3 scripts/email-pro.py --account outlook_live send 
  --to "recipient@example.com" 
  --subject "Hello" 
  --body "Test email"

OAuth 自动刷新

Gmail 和 Outlook 的 OAuth token 会自动刷新,无需手动干预。

工作原理

  • 自动检测过期 - 每次使用前自动检查 token 是否过期
  • 提前刷新 - 提前 5 分钟刷新,避免过期
  • 透明处理 - 调用方无需关心刷新逻辑
  • 持久化 - 新 token 自动保存到凭证文件

在代码中使用

from scripts.oauth_handler import get_valid_token

# 获取有效的 token(自动刷新)
token = get_valid_token('gmail')
headers = {'Authorization': f'Bearer {token}'}

# 使用 headers 调用 Gmail API
response = requests.get('https://www.googleapis.com/gmail/v1/users/me/profile', headers=headers)

高级用法

搜索邮件

python3 scripts/email-pro.py search "旅行" --limit 20

获取完整邮件

python3 scripts/email-pro.py fetch 71197

批量并发获取

# 获取最近 100 封邮件的完整内容(5 个线程并发)
python3 scripts/email-pro.py check --limit 100 | 
  jq -r '.[].uid' | 
  xargs -I {} python3 scripts/email-pro.py fetch {}

配置

配置文件位置

~/.openclaw/credentials/email-accounts.json

QQ 邮箱配置

{
  "qq_3421": {
    "email": "342187916@qq.com",
    "auth_code": "xxxx",
    "smtp_server": "smtp.qq.com",
    "smtp_port": 587,
    "imap_server": "imap.qq.com",
    "imap_port": 993,
    "provider": "imap",
    "status": "✅ 正常",
    "note": "接收邮箱"
  }
}

Outlook 配置

{
  "outlook_live": {
    "email": "qiao6646@live.com",
    "provider": "outlook",
    "account_name": "outlook_live",
    "client_id": "YOUR_CLIENT_ID",
    "client_secret": "YOUR_CLIENT_SECRET",
    "tenant_id": "YOUR_TENANT_ID",
    "status": "✅ 已授权",
    "note": "Outlook 邮箱"
  }
}

Gmail 配置

{
  "gmail_account": {
    "email": "your-email@gmail.com",
    "provider": "gmail",
    "account_name": "gmail_account",
    "client_id": "YOUR_CLIENT_ID",
    "client_secret": "YOUR_CLIENT_SECRET",
    "status": "✅ 已授权",
    "note": "Gmail 邮箱"
  }
}

命令参考

check - 检查邮件

python3 scripts/email-pro.py check [OPTIONS]

Options:
  --account NAME     账户名称 (默认: qq_3421)
  --limit N          限制数量 (默认: 10)
  --unread           仅未读邮件
  --mailbox NAME     邮箱名称 (默认: INBOX)

fetch - 获取完整邮件

python3 scripts/email-pro.py fetch UID [OPTIONS]

Options:
  --account NAME     账户名称 (默认: qq_3421)
  --mailbox NAME     邮箱名称 (默认: INBOX)

search - 搜索邮件

python3 scripts/email-pro.py search QUERY [OPTIONS]

Options:
  --account NAME     账户名称 (默认: qq_3421)
  --limit N          限制数量 (默认: 20)
  --mailbox NAME     邮箱名称 (默认: INBOX)

send - 发送邮件

python3 scripts/email-pro.py send [OPTIONS]

Options:
  --account NAME     账户名称 (默认: qq_3421)
  --to EMAIL         收件人 (必需)
  --subject TEXT     主题 (必需)
  --body TEXT        正文 (必需)
  --html             HTML 格式
  --attach FILE...   附件

list-accounts - 列出账户

python3 scripts/email-pro.py list-accounts

OAuth 授权

Outlook 授权流程

  1. 获取 Azure 应用信息

    • 登录 Azure Portal
    • 创建应用注册或使用现有应用
    • 复制 Client ID、Client Secret、Tenant ID
  2. 运行授权脚本

    bash scripts/authorize-outlook.sh
    

    或

    python3 scripts/authorize.py outlook 
      --client-id "YOUR_CLIENT_ID" 
      --client-secret "YOUR_CLIENT_SECRET" 
      --tenant-id "YOUR_TENANT_ID"
    
  3. 浏览器授权

    • 脚本会打开浏览器
    • 登录你的 Outlook 账户
    • 授予权限
    • 令牌自动保存到 ~/.openclaw/credentials/oauth_tokens.json

Gmail 授权流程

  1. 获取 Google OAuth 凭证

    • 访问 Google Cloud Console
    • 创建 OAuth 2.0 凭证
    • 复制 Client ID 和 Client Secret
  2. 运行授权脚本

    python3 scripts/authorize.py gmail 
      --client-id "YOUR_CLIENT_ID" 
      --client-secret "YOUR_CLIENT_SECRET" 
      --name "gmail_account"
    
  3. 浏览器授权

    • 脚本会打开浏览器
    • 登录你的 Gmail 账户
    • 授予权限
    • 令牌自动保存

优化点

  1. 批量 fetch - 一次获取多封邮件,快 4.5 倍
  2. 连接复用 - 保持连接活跃,省 385ms
  3. 错误处理 - 跳过损坏邮件,更稳定
  4. 并发处理 - 支持多线程并发获取
  5. 多提供商 - 统一接口支持 QQ、Gmail、Outlook
  6. OAuth 2.0 - 安全的令牌认证,自动刷新

性能基准

✅ 检查 10 封邮件: 0.5s
✅ 检查 100 封邮件: 3s
✅ 检查 1000 封邮件: 20s
✅ 发送邮件: 0.6s
✅ 并发获取 20 封: 1.5s

故障排除

连接超时

  • 检查网络连接
  • 验证 IMAP/SMTP 服务器地址和端口
  • 对于 Outlook,确保已授权

认证失败

  • QQ 邮箱:确认授权码正确(不是密码)
  • Outlook:重新运行授权脚本
  • Gmail:检查 OAuth 令牌是否过期

邮件解析失败

  • 某些邮件格式可能不支持
  • 脚本会自动跳过损坏的邮件

依赖

  • Python 3.6+
  • requests(用于 OAuth 和 API 调用)
  • 标准库: imaplib, smtplib, email, ssl, json, argparse

安装依赖:

pip3 install requests

文件结构

email-pro-optimized/
├── scripts/
│   ├── email-pro.py          # 主程序
│   ├── providers.py          # 邮件提供商实现
│   ├── oauth_handler.py      # OAuth 处理
│   ├── authorize.py          # 授权工具
│   ├── authorize-outlook.sh  # Outlook 快速授权
│   └── analyze.py            # 邮件分析工具
├── SKILL.md                  # 本文档
└── README.md                 # 项目说明

常见用例

旅行监控

# 定期检查旅行相关邮件
python3 scripts/email-pro.py search "机票|酒店|旅行" --limit 50

# 发送监控报告
python3 scripts/email-pro.py --account qq_136 send 
  --to "your-email@example.com" 
  --subject "旅行监控报告" 
  --body "今日发现 5 条相关邮件"

邮件备份

# 导出所有邮件为 JSON
python3 scripts/email-pro.py check --limit 1000 > backup.json

自动分类

# 使用 analyze.py 分析邮件
python3 scripts/analyze.py

更新日志

v2.0.0 (2026-03-20)

  • ✅ 新增 Gmail 支持(OAuth 2.0)
  • ✅ 新增 Outlook 支持(OAuth 2.0)
  • ✅ 模块化提供商架构
  • ✅ 自动令牌刷新
  • ✅ 统一命令接口

v1.0.0 (2026-03-19)

  • ✅ QQ 邮箱支持
  • ✅ 高性能批量获取
  • ✅ 并发处理

相关专题

更多
Postman身份认证怎么配置
Postman身份认证怎么配置

本专题从实际API接口调试场景出发,讲解Postman身份认证的完整配置流程,包括常见认证协议介绍、授权参数设置、访问令牌填写、OAuth 2.0授权及认证失败排查,帮助用户正确完成接口授权与访问验证。

2026.11.06

0

12

Postman请求头Headers怎么设置
Postman请求头Headers怎么设置

围绕Postman HTTP请求头配置展开,讲解Headers选项的具体使用方式,包括Key和Value参数填写、请求头信息添加、常见Header字段设置及请求头修改方法,帮助用户解决接口调试过程中遇到的请求头配置问题。

2026.11.06

0

13

Postman接口请求发送教程
Postman接口请求发送教程

详细介绍Postman接口请求的创建与发送方法,涵盖GET和POST请求、URL配置、请求参数、Headers请求头、Body请求体设置以及响应结果查看,帮助用户掌握Postman接口请求的完整操作流程。

2026.11.06

0

10

DBeaver怎么导入数据
DBeaver怎么导入数据

DBeaver数据导入专题,整理Excel、CSV、SQL、TXT等常见文件的数据导入方法,涵盖目标数据库选择、数据表创建、字段映射、数据类型设置及导入参数配置等操作,帮助用户将本地文件中的数据写入数据库,并了解批量导入、重复数据处理和导入失败等常见问题的解决方法。

2026.11.05

0

12

DBeaver安全防护教程大全
DBeaver安全防护教程大全

DBeaver安全防护专题,围绕数据库连接安全、账号密码保护和访问权限管理展开,整理SSL/TLS加密连接、SSH隧道、数据库凭据保存及证书验证等配置方法,同时介绍敏感信息保护、远程连接风险和高权限账号使用等注意事项,帮助用户提高数据库日常管理的安全性。

2026.11.05

0

12

DBeaver连接创建与配置教程
DBeaver连接创建与配置教程

本专题聚焦DBeaver数据库连接配置与管理,覆盖从新建连接、选择数据库类型到填写连接参数和验证连接的完整流程。针对MySQL、PostgreSQL、SQL Server等常见数据库,整理相应的连接设置方法,并提供驱动缺失、认证失败和连接异常等问题的排查方向。

2026.11.04

0

16

XORM框架结构体映射与表结构同步
XORM框架结构体映射与表结构同步

本专题围绕XORM框架的结构体映射展开,说明表名与字段的命名策略、xorm标签常用属性、主键自增与时间字段自动填充,并演示Sync2自动建表、增量字段升级、索引声明与反向生成结构体的完整流程。

2026.11.04

0

15

XORM框架安装配置与数据库连接
XORM框架安装配置与数据库连接

本专题聚焦XORM框架的配置与连接环节,拆解MySQL、PostgreSQL、SQLite、SQL Server的DSN写法与驱动选择,讲清连接池参数、多数据源拆分、读写分离与超时重连的处理方式,并补充容器与兼容数据库的适配经验。

2026.11.04

0

15

XORM框架安装配置与数据库连接
XORM框架安装配置与数据库连接

本专题聚焦XORM框架的配置与连接环节,拆解MySQL、PostgreSQL、SQLite、SQL Server的DSN写法与驱动选择,讲清连接池参数、多数据源拆分、读写分离与超时重连的处理方式,并补充容器与兼容数据库的适配经验。

2026.11.04

0

16

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
热门推荐
/
最新课程
phpStudy极速入门视频教程
phpStudy极速入门视频教程

共6课时 | 54.7万人学习

独孤九贱(4)_PHP视频教程
独孤九贱(4)_PHP视频教程

共89课时 | 134.3万人学习