You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

通过Google App Script提取指定Gmail标签邮件至Google Sheet

解决Gmail标签邮件提取到Google Sheet的脚本错误问题

常见错误排查方向

  • 权限验证:确认脚本已获取Gmail和Google Sheets的完整访问权限,运行时若提示权限不足,重新完成授权流程并勾选所有必要权限项。
  • 标签名称匹配:检查脚本中指定的Gmail标签名称是否完全一致(区分大小写,不含多余空格或符号),比如标签为订单通知,脚本里不能写成订单通知 。
  • 正文格式兼容:原脚本可能未处理HTML格式邮件,导致提取正文时抛出错误,需添加HTML转纯文本的处理逻辑。
  • Sheet配置检查:确认目标Sheet名称正确,且Sheet有足够空白行用于写入数据,避免因范围冲突报错。

修正后的可用脚本

function exportGmailToSheet() {
  // 配置参数
  const LABEL_NAME = "你的目标标签"; // 替换为实际Gmail标签名
  const SHEET_NAME = "Sheet1"; // 替换为目标Sheet名称

  // 获取指定标签的邮件线程
  const label = GmailApp.getUserLabelByName(LABEL_NAME);
  if (!label) throw new Error("未找到指定Gmail标签,请核对标签名称");
  
  const sheet = SpreadsheetApp.getActiveSpreadsheet().getSheetByName(SHEET_NAME);
  if (!sheet) throw new Error("未找到指定Sheet,请核对Sheet名称");

  // 初始化表格
  sheet.clearContents();
  sheet.getRange(1, 1, 1, 5).setValues([["时间戳", "发件人邮箱", "收件人邮箱", "邮件主题", "邮件正文"]]);

  // 遍历邮件提取数据
  let rowIndex = 2;
  const threads = label.getThreads();
  threads.forEach(thread => {
    const messages = thread.getMessages();
    messages.forEach(message => {
      // 提取核心字段
      const timestamp = message.getDate();
      const sender = message.getFrom().match(/<([^>]+)>/)? message.getFrom().match(/<([^>]+)>/)[1] : message.getFrom();
      const recipient = message.getTo().match(/<([^>]+)>/)? message.getTo().match(/<([^>]+)>/)[1] : message.getTo();
      const subject = message.getSubject();
      const body = message.getPlainBody().replace(/\n+/g, " ").trim();

      // 写入表格
      sheet.getRange(rowIndex, 1, 1, 5).setValues([[timestamp, sender, recipient, subject, body]]);
      rowIndex++;
    });
  });

  SpreadsheetApp.flush();
  Logger.log(`提取完成,共处理${rowIndex-2}封邮件`);
}

使用步骤

  1. 打开目标Google Sheet,点击扩展程序 > Apps 脚本,替换原有代码为上述脚本。
  2. 修改LABEL_NAME和SHEET_NAME为你的实际标签和Sheet名称。
  3. 点击运行按钮,首次运行按提示完成授权。
  4. 若仍报错,查看脚本编辑器日志(查看 > 日志),根据错误信息调整,比如部分邮件发件人无尖括号格式,可优化正则匹配逻辑。

内容的提问来源于stack exchange,提问作者Maximus

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.13 16:10:32