下载地址
https://www.zhengdianxue.com/wp-content/uploads/skills/org-wz4oglp9--salary-research-boss.zip将提示词发送给你的 AI 安装该 skills
请根据 https://skillhub.cn/install/skillhub.md,安装 @org-wz4oglp9/salary-research-boss。Boss直聘岗位薪酬调研:通过 CDP 被动抓取明文薪资数据,清洗分析后生成交互式 HTML 报告 + Excel 明细。 当用户提到薪酬调研、薪资调研、Boss直聘薪资、岗位薪酬分析、市场薪酬水平时使用。 基于隔离 Chrome profile + 低频被动抓取,防风控设计(请求预算/熔断/休眠)。 仅限个人研究用途,不得商用或转售数据。
另支持「宽带薪酬表生成」:调研某部门专员薪酬 → 按 P25 分位生成宽带薪酬薪级薪档表, 可继续调研全系列修正职级系数、或按公司战略上调至 P50 分位。 当用户提到生成宽带薪酬表、薪级薪档表、薪酬带宽、宽带薪酬、薪酬等级表时使用。 Boss直聘薪酬调研 Skill HR导师徐博士制作 · 已放入人力资源实操百科 · 仅供学习
阅读全文 (展开查看完整说明)
概述
Boss直聘薪酬调研 Skill
HR导师徐博士制作 · 已放入人力资源实操百科 · 仅供学习
概述
对 Boss直聘(zhipin.com)做岗位薪酬调研:多关键词 × 多城市抓取职位数据(明文薪资),清洗归一(区间中值、·N薪结构、元/天折算)后生成统计分析和可视化报告。
核心安全设计(务必保持):
- Chrome CDP 被动旁听页面自身 API 响应,不注入请求,复用真实登录态(隔离 profile
~/.boss-zhipin-scraper/chrome-profile) - 单任务 ≤10 页、单次运行 ≤500 请求预算、任务间随机休眠 60~120s
- 风控熔断(code 31/37)即当日停止,24h 后再试
- 仅限个人调研,不商用、不转售、不高频抓取
环境与路径
- Python:WorkBuddy 托管 Python
%USERPROFILE%.workbuddybinariespythonenvsdefaultScriptspython.exe(下称$PY;非 WorkBuddy 环境用本机 Python 3.10+ 亦可) - 依赖:requests、websocket-client、pandas、openpyxl(首次使用先
pip install装齐) - 技能根目录:本 SKILL.md 所在目录(
scripts/、assets/、references/相对于它) - 隔离 Chrome profile:
%USERPROFILE%.boss-zhipin-scraperchrome-profile(首次运行自动创建) - Chrome 启动脚本:技能目录内
scripts/start_cdp_chrome.bat(CDP 端口 9223,自动探测 Chrome 路径;9222 常被系统占用故固定 9223) - 依赖:requests、websocket-client、pandas、openpyxl(已装齐)
工作流
Step 0:确认调研需求
用 AskUserQuestion 确认:岗位关键词(1~5 个)、城市(1~2 个)、每任务页数(建议 3~5,上限 10)。告知用户:需要用其 Boss直聘账号在专用 Chrome 中登录(一次性,之后持久)。
Step 1:启动专用 Chrome(若无)
检测 CDP:
curl -s --noproxy "*" --max-time 4 http://127.0.0.1:9223/json/version不通则请用户双击技能目录下的 scripts/start_cdp_chrome.bat(或代理用后台常驻 bash 会话保活启动),并在弹出的窗口登录 zhipin.com。然后验证:
cd <技能根目录>
NO_PROXY="127.0.0.1,localhost" no_proxy="127.0.0.1,localhost"
HTTP_PROXY= HTTPS_PROXY= http_proxy= https_proxy=
"$PY" scripts/vendor/boss_cdp_raw.py --check --cdp-port 9223注意:本机有系统代理,必须带 NO_PROXY 环境变量调用 vendor 脚本(batch_scrape.py 已内置)。
Step 2:批量抓取
cd <技能根目录>
"$PY" scripts/batch_scrape.py --tasks "HRBP:上海:3" "薪酬绩效:上海:3" --outdir output/batch1任务格式 关键词:城市:页数;任务间自动随机休眠 60~120s(可用 –sleep-min/–sleep-max 调整)。抓取期间不要并行其他任务;失败且提示风控码时当日停止。
Step 3:清洗
"$PY" scripts/clean_salary.py --input output/batch1 --output output/jobs_clean.csv(--selftest 可跑内置解析自测。多文件自动按 job_id 去重。)
Step 4:分析
"$PY" scripts/analyze.py --input output/jobs_clean.csv --output output/analysis.jsonStep 5:渲染报告
"$PY" scripts/render_report.py --analysis output/analysis.json --clean output/jobs_clean.csv
--html output/薪酬调研报告.html --excel output/薪酬明细.xlsx
--keyword "HRBP" --city "上海"产出:交互式 HTML(内嵌 ECharts:月薪分布/经验学历规模分位/技能词频/福利词频/交叉表,离线可开)+ Excel(明细 + 汇总统计两个 sheet)。
Step 6:汇报
用 present_files 展示 HTML 报告与 Excel。文字总结:中位数、P25-P75、关键结构差异(经验/学历/规模)、高频技能。提醒用户:数据仅供个人研究。
宽带薪酬表生成工作流
触发词:「帮我调研 XX 地区 XX 部门的薪酬并生成 XX 宽带薪酬表」
例:帮我调研上海人力资源部门的薪酬并生成人力资源宽带薪酬表
本流程把「薪酬调研」与「薪级薪档表」打通,四步递进,每步由用户确认是否继续:
B1:调研专员薪酬(锚定基础档)
- 解析需求:部门名(序列名)+ 城市。岗位关键词默认用「{部门名}专员」;部门名含别名时补一个同义关键词(如 人力资源专员 + 人事专员)。
- 走 Step 0~4 抓取并分析专员岗位(页数建议 3,样本够用即可)。
- 从
analysis.json读overall.p25与overall.p50(单位 K/月,需 ×1000 转元)。
B2:生成粗略宽带表(专员 P25 锚定)
"$PY" scripts/build_salary_band.py --name 人力资源
--analysis output/analysis.json --anchor p25
--output "<输出目录>/人力资源宽带薪酬表.xlsx"- 默认策略:专员基础档 = 市场 P25(成本可控、跟随策略);职级系数用模板默认(主管1.5/经理2.5/总监4)。
- 脚本纯 openpyxl 生成,公式保留、Excel 打开自动重算;汇报时列出 专员/主管/经理/总监 的 1档/3档/12档。
B3:提示是否调研全系列修正(更贴市场行情)
生成粗略表后,主动用 AskUserQuestion 询问用户是否继续:
- 「是否调研 主管/经理/总监 全系列薪酬,修正职级系数(更贴合市场)?」
- 若同意:对 主管、经理、总监 分别抓取(各 3 页)→ 得到各自 P25(或 P50)→ 计算系数 = 该职级市场值 ÷ 专员市场值 →
用 --ratios "主管:x,经理:y,总监:z" 重新生成。
- 若拒绝:保留模板默认系数,跳到 B4。
B4:提示是否按战略上调至 P50
再询问:
- 「是否根据公司薪酬战略,将锚点从 P25 上调至 P50(薪酬领先策略)?」
- 若同意:
--anchor p50(或直接把专员基础档改为专员市场 P50)重新生成;系数不变或同步用 P50 口径重算。 - 若拒绝:维持 P25 版。
最终用 present_files 展示生成的最新 xlsx,并文字说明锚点口径(P25/P50)、职级系数、各职级档位区间。
关键实现说明
scripts/vendor/:上游 eatmoreduck/boss-zhipin-scraper(MIT,commit 2bc40f5,未改动),核心抓取与防风控逻辑都在boss_cdp_raw.pyscripts/batch_scrape.py:编排层,已内置 NO_PROXY 处理与 CDP 自检,默认端口 9223scripts/clean_salary.py:薪资解析规则见文件头注释(15-25K·14薪 → 年包 210-350 千元;200-300元/天 → ×22 天/月折算;面议剔除)scripts/build_salary_band.py:宽带薪酬表生成(见下)。纯 openpyxl 改指定单元格,公式零触碰、单等号保留,Excel 打开自动重算assets/宽带薪酬模板.xlsx:12职级×12档模板。唯一锚点 V4=专员基础档,V5~V8 职级系数(专员/主管/经理/总监),V9~V12 档差比例%;职级基准档:主管=专员×V6、经理=专员×V7、总监=专员×V8,其余职级按固定倍数派生assets/echarts.min.js:本地 ECharts 5.5.1,报告离线可开- Windows 排障:见 [references/windows-troubleshooting.md](references/windows-troubleshooting.md)(端口占用/Chrome 不绑 DevTools/代理/风控码)
- 宽带表生成说明:见 [references/宽带薪酬表生成.md](references/宽带薪酬表生成.md)(模板逻辑/系数修正/P50 上调/使用红线)
红线(必须遵守)
- 不得绕过或调大上游的 500 请求预算、10 页上限
- 遇 code 31/37 当日停止
- 不得把数据用于商业转售或对外发布原始数据
- 用户主 Chrome 不碰:专用 profile 完全隔离