
## 工作流概述
这个n8n工作流通过检查Google Sheets中存储的职位URL的Last-Modified头部信息,自动识别过期的职位发布,并向招聘人员发送邮件提醒。
## 工作流逻辑
### 1. 定时触发
– **Schedule Trigger节点**:每天10:00 IST(亚洲/加尔各答时间)自动触发工作流
### 2. 配置加载
– **Set节点(configuration sheet)**:加载工作流配置参数,包括:
– SPREADSHEET_ID:Google Sheets文档ID
– THRESHOLD_DAYS:过期阈值天数(默认30天)
– TIMEZONE:时区设置
– DRY_RUN:测试模式开关
### 3. 数据获取
– **Google Sheets节点**:从”Job Posts”表格读取职位数据,包括:
– job_url:职位发布URL
– recruiter_name:招聘人员姓名
– recruiter_email:招聘人员邮箱
### 4. 数据验证
– **If节点(Filter Invalid Rows)**:验证数据完整性:
– 非空的job_url
– 有效的邮箱格式
– 非空的recruiter_name
### 5. 周末检查
– **Code节点(Check Weekend)**:根据INCLUDE_WEEKENDS配置决定是否在周末执行
– **If节点(Weekend Filter)**:过滤周末数据
### 6. HTTP请求处理
– **Wait节点**:添加HTTP请求之间的延迟
– **HTTP Request节点**:发送HEAD请求获取Last-Modified头部信息
### 7. 数据处理
– **Set节点(configure mapping)**:提取Last-Modified头部信息
– **Code节点(calculate Age)**:计算职位发布的年龄(天数)
### 8. 条件判断
– **If节点(Is Age ≥ THRESHOLD_DAYS?)**:检查职位年龄是否超过阈值
### 9. 邮件通知
– **Gmail节点**:向招聘人员发送个性化提醒邮件
## 配置参数详解
### 核心配置
– **THRESHOLD_DAYS**:过期阈值,默认30天
– **DRY_RUN**:测试模式,true时只预览不发送邮件
– **TIMEZONE**:时区设置,默认Asia/Kolkata
– **INCLUDE_WEEKENDS**:是否在周末执行
### 请求配置
– **HTTP_TIMEOUT_SECONDS**:HTTP请求超时时间
– **HTTP_RETRIES**:重试次数
– **RATE_LIMIT_HTTP_SECONDS**:HTTP请求速率限制
– **USER_AGENT**:用户代理标识
### 邮件配置
– **SMTP_FROM**:发件人邮箱
– **SUBJECT_TEMPLATE**:邮件主题模板
– **HTML_TEMPLATE**:HTML邮件模板
– **TEXT_TEMPLATE**:纯文本邮件模板
## 应用场景
### 目标用户
– 招聘团队维护外部招聘板/职业网站的职位链接
– 希望获得每日自动提醒来刷新或下架过期职位的协调员
– 使用Google Sheets存储职位URL和联系人信息的团队
### 使用案例
– 30天以上未更新的职业网站职位发布
– 第三方招聘板(如专业社区)的自动化卫生检查
– 代理合作链接管理,确保过期的职位不会保持活跃状态
## 故障排除
### 常见问题
– **无邮件发送**:检查DRY_RUN是否为false
– **行被跳过**:验证job_url和recruiter_email格式
– **”过期”未检测到**:页面缺少Last-Modified头部和可识别的meta标签
– **时间计算错误**:确认时区配置
### 解决方案
– 添加手动审核机制
– 考虑添加辅助列记录缺失日期
– 调整速率限制参数
– 验证SMTP凭据和发件人地址
## 自定义选项
### 阈值调整
– 修改THRESHOLD_DAYS值(如15、45天)
### 调度调整
– 调整Cron时间以适应不同时区
### 模板定制
– 编辑邮件主题和内容模板
### 功能扩展
– 添加Slack通知
– 写入辅助列进行审计跟踪
– 添加每行阈值覆盖功能

评论(0)