影刀RPA新手教程智联招聘自动化完全指南——职位批量发布、简历筛选与面试邀约我们公司在扩张期的时候HR部门每周要在智联招聘上发十几个职位、筛几百份简历、约几十场面试。HR同事忙得焦头烂额每天加班到很晚。后来我把影刀RPA用起来职位批量发布、简历自动筛选、面试邀约自动发送HR只需要专注面试环节就行了。认识影刀与安装去影刀官网下载社区版.exe安装包安装过程一路下一步。注意装完第一件事就是去浏览器插件设置里点安装Chrome插件——操作智联招聘企业版需要浏览器驱动。打开编辑器后会看到空白的流程画布左侧是指令面板你可以直接搜索指令名称比如搜打开网页就能找到对应指令拖到画布上。不用被复杂的界面吓到日常写流程其实就十几二十条指令。元素定位四合一XPath CSS 正则智联招聘企业后台的XPath定位//input[idjobName] 职位名称输入框 //select[namecity]/option[value010] 城市选择北京 //textarea[contains(placeholder,职位描述)] 职位描述文本框 //span[classresume-item]//a[contains(text(),查看简历)] 简历查看链接 //button[contains(text(),批量发布)] 批量发布按钮 //div[contains(class,filter)]//label[contains(text(),本科)] 学历筛选CSS选择器简化定位input#salary-min 最低薪资 div.resume-card:not(.viewed)未查看的简历 button.send-interview 发送面试邀约 table.candidate-list tr[data-statusnew] 新候选人正则表达式在解析简历时很有用——从简历文本中提取手机号1[3-9]\d{9}、邮箱[\w.][\w.]、工作年限\d年等关键信息。变量与数据类型职位发布的核心数据job_posting{title:高级Python开发工程师,city:北京,district:朝阳区,salary_min:25000,salary_max:40000,education:本科,experience:3-5年,description:负责公司核心系统的设计和开发...,requirements:1.精通Python...,tags:[Python,Django,MySQL,Redis],headcount:3,platforms:[zhilian,51job,boss]}列表存一批职位每个元素是字典。数字类型用于薪资范围必须整数、招聘人数。字符串存职位描述和要求很长可能要几千字。JSON处理智联接口返回的发布结果——成功还是失败、失败原因。流程控制批量发布流程店群矩阵自动化突破运营极限读取职位Excel清单 ForEach job in job_list ├─ 打开智联招聘企业版职位管理页 ├─ 点击发布新职位 ├─ 填写职位名称 ├─ 选择城市区域 ├─ 选择职位类别 ├─ 输入薪资范围 ├─ 选择学历经验要求 ├─ 填写职位描述和要求 ├─ 添加职位标签 ├─ If 是急聘职位 │ └─ 开启急聘标识和置顶 ├─ 点击提交 ├─ 等待发布结果 ├─ If 发布成功 │ └─ 记录职位ID到Excel └─ Else └─ 记录失败原因流程控制还包含简历筛选逻辑——用ForEach循环待筛选简历列表用If判断学历、工作经验、技能关键词是否匹配匹配的加入面试候选池不匹配的标记为淘汰。网页自动化智联招聘企业后台有个特别烦的设计——表单特别长发布一个职位要填二三十个字段。有些字段在下拉框里有些是文本输入有些是复选框。等待策略统一用等待元素出现每个步骤等上一个元素出现后再操作下一个避免页面加载不完整导致操作失败。弹窗处理经常弹出检测到您长时间未操作弹窗和推荐使用的引导弹窗。用标准关闭流程——先Esc、不行就点空白处、再不行就刷新。如果是保存草稿的确认弹窗直接按回车确认。翻页简历列表有明确的分页器能读到总页数。用For循环按页处理每翻一页等列表完全加载等第一个简历卡片出现作为信号。窗口切换智联招聘查看简历有时会在新标签页打开用获取已打开的网页对象切换到新窗口采集完信息后关闭回来。懒加载在简历列表页常见——滚动到屏幕底部才加载更多简历。处理方法先无限循环向下滚动直到加载出的简历数量不再增加为止。数据处理Excel是HR的命根子。职位发布列表在Excel里维护包含所有要发布的职位信息。发布结果回写Excel记录每个职位在各平台的状态已发布/审核中/发布失败。简历筛选结果也输出到Excel——合格简历列表、待定简历列表、不合格简历列表。批量写入用二维列表qualified_resume[[姓名,手机号,学历,工作年限,当前公司,匹配度]]forresumeinshort_list:qualified_resume.append([resume[name],resume[phone],resume[education],resume[years],resume[current_company],resume[match_score]])write_excel_range(qualified_resume,合格简历,A1)文本处理用于简历解析——从简历文本中用正则提取关键信息姓名、电话、邮箱、学校、公司用关键词匹配判断技能匹配度。JSON解析智联招聘API返回的简历详情数据。鼠标键盘图像自动化智联招聘主要是网页操作图像识别用得不多。但企业后台有些操作比较特殊——比如上传公司logo需要用系统的文件选择对话框这个对话框不是网页元素要用图像识别点打开按钮。# 上传公司logoclick(上传logo按钮.png)wait_appear(文件选择对话框.png)keyboard_input(rC:\logo\company_logo.png)click(打开按钮.png)锚点定位用于处理智联后台的悬浮菜单——鼠标移到职位管理上会展开子菜单子菜单的位置相对于导航栏是固定的用导航栏做锚点计算偏移。进阶技能智联招聘开放API可以直接获取简历和发布职位比网页采集稳定得多。用影刀的HTTP请求调用defpost_job_zhilian(job_data,access_token):url智联招聘开放平台APIheaders{Authorization:fBearer{access_token},Content-Type:application/json}body{jobName:job_data[title],cityCode:job_data[city_code],salaryMin:job_data[salary_min],salaryMax:job_data[salary_max]}responsehttp_post(url,body,headers)returnresponsePython模块封装简历匹配算法——根据职位要求自动给简历打分把HR从几百份简历中解放出来defscore_resume(resume_text,job_requirements):score0forkeywordinjob_requirements[must_have]:ifkeyword.lower()inresume_text.lower():score10forkeywordinjob_requirements[nice_to_have]:ifkeyword.lower()inresume_text.lower():score5returnmin(score,100)OCR识别简历附件中的文字——有些候选人上传的是图片格式简历OCR提取文字后再做匹配。平台实战完整的智联招聘自动化流程职位批量发布从Excel读取待发布职位→登录智联企业版→逐个创建职位→填写所有必填字段→提交审核→记录发布状态。一次处理十几个职位原来HR手动做要半天影刀20分钟搞定。简历自动筛选定时拉取新简历列表→逐份下载或采集简历内容→提取关键信息姓名、电话、学历、工作经历、技能→与职位要求匹配打分→合格简历自动移至面试候选池、不合格简历批量标记淘汰。筛选准确率约80%剩下的20%边界情况由HR人工复核。面试邀约自动发送面试候选池的简历自动发送面试邀约。选择面试模板根据岗位不同选不同模板填充候选人姓名和面试时间地点一键发送。面试时间由HR提前在Excel里排好影刀读取后自动填充。系统联动新简历通知通过飞书消息推送到招聘群defnew_resume_alert(name,position,match_score):msg{msg_type:interactive,card:{header:{title:{content:f新匹配简历 -{position},template:blue}},elements:[{tag:div,text:{content:f候选人{name}}},{tag:div,text:{content:f匹配度{match_score}/100}},{tag:div,text:{content:请在系统中查看完整简历}},[video(video-QdBgYB9Z-1782837273013)(type-csdn)(url-https://live.csdn.net/v/embed/524992)(image-https://v-blog.csdnimg.cn/asset/b59aed2f01d4fe8583467562aaf4dcfd/cover/Cover0.jpg)(title-temu店群自动化报活动案例)]{tag:action,actions:[{tag:button,text:{content:查看详情},type:primary}]}]}}requests.post(webhook,jsonmsg)飞书多维表格做招聘管道看板每个职位一列每个候选人一张卡片在各阶段新简历→筛选→初试→复试→Offer→入职之间流转。定时任务配置——职位发布每日早10点、简历筛选每2小时、面试邀约每日下午3点和6点、每日招聘报告晚8点。工程化与规范子流程拆分“智联登录”处理企业账号登录和session维护“职位发布”单个职位的完整发布流程“简历采集”获取新简历列表和详情“简历解析”从简历文本提取结构化信息“匹配评分”根据职位要求打分“面试邀约”发送邀约消息调试技巧发布职位时最容易出错的是类目选择——智联的类目是多级联动下拉框选错一级后面全错。我调试时用打断点看每个下拉框选中后的值确认逐级选中正确。命名规范变量前缀zl_子流程名如智联_职位发布。每个职位发布流程都保存一个单独的版本方便追溯。招聘自动化的关键在于稳定——发错面试邀约可比发错商品严重多了。我建议大家写完后先在测试环境多跑几次确认无误再上线。想了解更多的实操细节可以参考 home.linyan.cloud 上的RPA实战笔记。速查表与常见报错智联招聘高频报错职位发布审核不通过检查职位名称是否包含平台禁止词汇、薪资是否在合理范围、描述是否包含联系方式。平台禁止在职位描述里留电话号码和微信。简历下载限流智联对简历下载有频率限制太快会提示操作频繁。每份简历之间等待5-10秒。元素定位失败职位发布表单智联后台的类目选择使用了特殊的联动组件XPath有时候定位不到下层选项。改用图像识别点击或者用JavaScript脚本直接修改下拉框的值。登录验证企业版偶尔弹滑块验证码。检测到验证页面后暂停并通知HR手动处理。面试邀约发送失败检查候选人简历状态——已入职、已被其他企业邀约的简历无法发送。发送前先查询简历状态。简历解析错误简历格式千差万别正则提取可能不准。关键信息手机号、姓名提取失败时标记为待人工处理。Cookie过期session有效期短。长时间运行的流程每1小时刷新一次页面保持活跃。#影刀RPA #智联招聘自动化 #简历筛选 #HR效率工具 #RPA新手教程作者林焱