51job简历下载器
将以下提示词粘贴到你的 AI 对话框中:
请根据 https://skillhub.cn/install/skillhub.md,安装 @koseninfo/qiancheng-resume-downloader 这个技能。
技能介绍
解决什么问题
在前程无忧的「聊天 / 消息」栏目里,候选人通过会话发来的简历散落在一个个岗位会话中:HR 既要把它们按岗位归档到本地,又要逐条判断「这位候选人是否已提供简历」,没给的还得回消息去要。手工处理意味着反复点击、逐个下载、人工甄别,批量操作时尤其容易漏。这个技能把这部分重复劳动交给脚本,在你自己的账号和浏览器里完成下载与索要。
它是怎么工作的
- 操控本地 Edge:通过 CDP(
--remote-debugging-port=9222)连接本机 Edge,在操作系统层面驱动页面,前程无忧前端 JavaScript 感知不到外部操控。 - 人工登录一次,之后复用 Cookie:首次运行打开可视化企业登录页,由你手动完成手机号 + 短信验证码 + 极验登录;成功后 Cookie 存到
~/.qiancheng_downloader/cookies.json,后续运行注入 Cookie 经 SSO 跳转直接进入已登录态,Cookie 失效才退回手动登录。 - 按岗位分别下载:进入「人才沟通」栏目后抓取右侧岗位列表,逐个岗位进入候选人会话分别处理;简历按
下载目录/岗位/下载日期归档,优先走下载按钮,失败回退 PDF 导出。 - 先判断,再索要:每个候选人先检测会话中是否已有简历(在线简历 / 附件 / 聊天中的文件),有则下载,无则自动发送「索要简历」消息;并区分「没提供」与「提取失败」,避免向已给过简历的人重复索要。
- 默认拟人化操作:贝塞尔曲线鼠标轨迹、随机停顿、逐字输入等,降低风控识别;
--fast可关闭以提速。 - 去重与增量:
~/.qiancheng_downloader/download_record.json按岗位::姓名记录已下载项,重复运行直接跳过;auto模式首跑全量、之后仅处理 24 小时内有新互动且未下载过的候选人。 - 结果只走 stdout:完成报告打印到标准输出,带
@@DOWNLOAD_REPORT_JSON@@前缀的 JSON 行便于机器解析,不写本地 JSON 文件、不弹系统窗,结束后关闭 Edge 调试实例。
适用边界与注意点
它只能操作你自己前程无忧账号下、候选人通过聊天/消息发来的简历数据,请遵守前程无忧用户协议与当地法律法规,仅下载你有权处理的简历并妥善保管其中的个人信息。脚本依赖本机桌面图形会话运行;前程无忧前端 DOM 会随版本更新,若岗位筛选或简历提取未生效,可用 --chat-url 覆盖入口,或通过 scripts/site_config.user.json 深合并覆盖选择器(选择器集中在 scripts/site_config.py 作为单一事实来源),再用 --max 1 做单份验证。拟人化操作只是降低风控概率,不等于绕过平台限制;账号被冻结或锁定仍需人工处理。首次运行前脚本会通过 ensure_environment() 自检 Python 版本、Playwright 依赖与 Edge,无法自动修复会明确报错中止,不会静默继续。
使用场景
- 招聘者要把前程无忧「人才沟通」中各岗位候选人发来的简历逐份下载,并按岗位与日期归档到本地目录。
- 候选人未发简历时,需要在会话中自动补发「索要简历」消息,同时区分「没提供」与「提取失败」两类情况。
- 每天只处理最近 24 小时内有新互动、且尚未下载过的候选人,避免重复抓取已归档的简历。
- 前程无忧改版后岗位筛选或简历提取失效,需要临时覆盖聊天页 URL 或选择器,并用单份验证确认后再全量运行。
适合人员
- 每天在前程无忧「人才沟通」里与候选人沟通、需要把收到的简历归档到本地的招聘顾问。
- 同时维护多个在招岗位、要把候选人简历按岗位分目录长期留存的人力资源专员。
- 希望每隔一段时间只增量拉取新沟通候选人简历、不想重复下载的 HR 系统对接人。