用油猴脚本实现Boss直聘每日100个岗位批量投递
【免费下载链接】boss_batch_pushBoss直聘批量投简历,批量发送自定义招呼语项目地址: https://gitcode.com/gh_mirrors/bo/boss_batch_push
周五晚上刷Boss直聘,刷到合适的岗位不少,可每点一次"立即沟通"都要切页面、等加载,手动投到一半当天的额度就快见底了。要是能按自己设好的条件让电脑替你逐个点击,你只管忙别的呢?这就是Boss直聘批量投递工具 boss_batch_push 要解决的场景。
项目一句话定位
boss_batch_push 是一个开源油猴脚本:装进浏览器后,打开Boss直聘职位列表页就会自动多出一块控制面板,让你按条件筛选岗位、批量投递,并支持投递后补发自定义招呼语。脚本本体是 src/oop-self-req-main.js 这一个约1900行的单文件,结构并不复杂。
它是怎么干活的
脚本以 document-start 时机注入 zhipin.com 页面,在页面框架加载前就位,随后拦截列表页的翻页请求,实现自动加载下一页,你不用手动翻。
投递路径上没有走"模拟点按钮"的老路,而是直接取浏览器里的 bst 凭证构造投递请求,调用平台自己的投递接口。所以投递发生在列表页本地,不需要逐个点开职位详情,这就是README里说的"无感投递"。为了防止并发重复投递,源码里引入了一把"投递锁":每个岗位先抢锁、投递完成再释放;两次投递之间还固定插入 800ms 间隔,请求失败时做有限次重试(见 脚本源码 中 sendPublishReq 的实现)。
自定义招呼语的实现最费功夫。Boss直聘不支持把自定义话术设为默认招呼语,脚本只能在投递成功后模拟聊天框的输入与发送流程。README 的"作者闲话"里记录了两个坑:直接模拟 click 会被拦截,需要改动聊天组件内部状态;脚本发起的 websocket 消息因 to.uid 缺值而发送失败,需手动补上。这两处处理保证了招呼语只发得出、不重发。
🚀 从零跑起来:四步
- 在浏览器商店安装 Tampermonkey 插件。
- 克隆仓库:
git clone https://gitcode.com/gh_mirrors/bo/boss_batch_push - 打开Tampermonkey点"添加新脚本",把
src/oop-self-req-main.js的完整内容粘贴进去并保存。 - 打开Boss直聘的职位搜索页,页面下方出现"批量投递 / 生成Job词云图 / 保存配置"等按钮即安装成功。
工作流拆解
投递前:两级筛选
先用Boss直聘顶部的原生筛选(城市、薪资、经验)圈出大致范围,再用脚本的筛选项精确收口:公司名包含、排除公司名、Job名包含、工作内容排除、薪资范围、公司规模范围,全部是逗号分隔的模糊匹配。比如"Job名包含"填【Java,后端,服务端】,"工作内容排除"填【外包,上门,销售】,只有同时满足的岗位才会被投。"工作内容排除"还做了上下文判断:描述里写"不是外包""销售系统"时,虽然包含关键词也不会被误杀。
再叠加"过滤不活跃Boss"开关(默认开启):投递前检查招聘方最近活跃度,长期不活跃的岗位直接跳过。README 提到Boss直聘每天投递机会有限(约100次),投给不会回复的人是实打实的浪费。
投递执行:锁 + 延迟 + 计数
点"批量投递"后,脚本对当前页岗位逐个执行:条件检查 → 活跃度检查 → 占用投递锁 → 发投递请求 → 可选发自定义招呼语 → 释放锁,每步之间间隔 800ms。标题栏和日志区实时显示当天已投次数;手动停止或整批完成后,会触发桌面通知(需先给站点授权通知权限)。
投递后:词云看行情
投完(甚至不投)都可以点"生成Job词云图":脚本抓取当前页所有岗位详情文本做分词权重分析,生成词云。如果"Java开发经验""分布式技术""Spring Boot"字号最大,说明这批岗位高频要求这些技能,正好可以对照简历看看关键词是否缺失。
🔧 实战调参
- 筛选组合示例:Job名包含【Java,后端开发】、薪资范围【12-20】、公司规模【100-10000】、工作内容排除【外包,上门,客服】。"公司名包含"一般留空——一旦填写,就只投列出的那几家公司。
- 招呼语写法:实际效果是"默认招呼语 + 一条自定义招呼语"连着发出,建议控制在三句内:一句点明目标岗位与年限,一句提一个与岗位相关的项目经验,最后一句表达沟通意愿;换行用 \n。
- 频率控制:投递间隔固定 800ms,这是更新日志里从早期 500ms 调上来的;配合每天约100次的平台额度(README 记录),不必长时间挂着批量投递满负荷跑。
- 多账号:脚本支持大小号快速切换,每个账号的筛选配置和招呼语独立存储,"保存配置"后下次打开直接沿用。
⚠️ 避坑与排障
- 投递报"请求不合法":通常是平台改了请求字段而脚本版本过旧,先更新到最新脚本代码。
- 招呼语重复发送:早期版本出现过,更新日志记录 2024-12-03 版本已修复,遇到先升级脚本。
- 多次刷新页面后脚本报错:README 将其列为已知问题(被劫持的函数会叠加报错),重开一个新标签页即可。
- 投递失败、提示"工作经历与岗位要求不匹配":这是平台侧的拦截,脚本只是原样展示接口回复,不会重试,无需排查脚本。
- 页面改版导致按钮失效:README 明确提示Boss直聘已上线新的职位页面,本项目尚未适配,作者另有新项目做了适配,使用前先核对 README 最新说明。
适合谁用
boss_batch_push 把筛选、点击、写招呼语这三件最耗时间的投递动作压缩成一次点击,还顺带用词云给了你看"行情"的视角。它适合每天需要持续投岗位、且希望精确管理投递额度的求职者。如果你的场景对得上,装好Tampermonkey、克隆仓库、粘贴脚本,十分钟就能跑起来;工具解决效率,简历内容仍然是底子。
【免费下载链接】boss_batch_pushBoss直聘批量投简历,批量发送自定义招呼语项目地址: https://gitcode.com/gh_mirrors/bo/boss_batch_push
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考