get_jobs 求职者投递简历工具get_jobs是一款助力求职者高效投递简历的开源工具。
如果你有心仪的工作,能在这儿许下愿望,愿望实现后,记得回来更新状态。许愿墙是飞书文档,你编辑好后导出为xlsx文档,覆盖本项目中resources文件夹里的“许愿墙.xlsx”文档就行。
完成后,你能把xlsx文档提交到main分支,之后你就成为本项目的开发者之一了。这份经历能加在你的简历里,注明“Github热门开源项目开发者之一”。不过你要尽可能熟悉本项目的逻辑,想象某块功能是自己开发的,这样在介绍时能更从容、优雅。
当前招聘市场,有效的软件只有Boss和猎聘。使用Boss时若出现掉线等问题,要注意两点:一是修改间隔等待时间;二是当天停止投递,第二天再继续,否则可能导致账号被封。
不要依赖程序投递Boss!手机端的Boss比本程序网页端靠谱得多。只有当你用手机投递得很累,且还没投够100个时,再考虑用本程序的Boss投递功能。
本项目是GitHub热门开源项目,已申请Intelli的开源支持计划。加入开发组能获得Intelli编辑器官方的免费全家桶永久使用权,欢迎联系加入。
AI智能匹配:AI能检测岗位匹配度,并且根据JD自动撰写个性化打招呼语(仅限Boss直聘)。
图片简历投递:在Boss直聘发送打招呼语后,能自动发送图片简历,不用等HR索要,能有效提高回复率。
定时投递:支持一键投递所有平台,还能设置定时投递,第二天自动重新投递,节省时间和精力。
智能过滤:自动过滤不活跃HR、猎头岗位以及不符合目标薪资的岗位,让简历投递更精准。
实时通知:通过企业微信消息推送,实时了解简历投递情况,不错过任何机会。
黑名单功能:自动更新黑名单企业,避免重复投递不合适的公司,提高投递效率。
易于配置:采用集中化配置,只需修改配置文件就能自定义筛选条件,上手简单。
持久登录:支持超长Cookie登录,大部分平台每周只需扫码一次,减少重复操作。
• 必须关闭墙外代理,因为项目主要针对国内平台,使用墙外代理会导致页面加载缓慢。
• 如果你有“折腾精神”想自己配置,QQ群内提供免费答疑;若不想麻烦,可进入群聊查看群公告获取指导。
• 不同系统的页面存在差异,可能导致程序不兼容,文末会提供文档,尽量帮助大家进行自定义修改。
• 若不方便访问GitHub,可使用码云(中国大陆)镜像版本:gitee/getjobs。
通过git拉取代码,操作命令如下:
git clone https://github.com/loks666/get_jobs.git
cd get_jobs
需准备JDK21、Maven、Chrome、ChromeDriver。程序会自动判断系统环境,使用对应的chromedriver进行浏览器操作,但Chrome必须是从Chrome官网下载的对应版本(默认最新版)。非Windows操作系统,需自行下载对应的驱动到src/main/resources路径下解压使用。
配置文件默认设置基本能满足需求,若需调整,可修改地区、岗位等信息,以下是关键配置说明:
• 日志文件:保存在target/logs目录下,所有日志会输出到以运行日期结尾的日志文件中。
• 超时等待时间:Constant.WAIT_TIME,单位为秒,用于等待页面加载。
• Cookie登录:扫码后会自动保存cookie.json文件在代码运行目录下,更换账号时直接删除该文件即可。
• 平台配置转换码:每个平台的配置转换码都在对应平台文件夹下的Enum类里,找到相应代码添加到类中即可。
• 将.env_template文件重命名为.env。
• 在企业微信创建群聊,添加机器人并获取机器人URL,把URL复制到.env文件中的HOOK_URL字段。
• 保持config.yaml文件中bot.is_send为true。
完成以上配置后,在每个平台投递结束简历,企业微信的群聊内就会推送岗位投递情况,无需修改其他代码。
.env文件配置如下:
HOOK_URL=https://qyapi.weixin.qq.com/cgi-bin/webhook/send?key=your_key_here
BASE_URL=https://api.openai.com
API_KEY=sk-xxx
MODEL=gpt-4o-mini
• HOOK_URL:企业微信机器人推送链接。
• BASE_URL:直连或中转链接地址,若为直连需要开启梯子。
• API_KEY:调用AI所需的API KEY。 • MODEL:要使用的AI模型名称。
根据测试,使用gpt-4o-mini模型时,Boss直聘每天所有岗位投递结束后,消耗的额度大约在0.06美元(6美分)左右。AI代理除了在本项目中使用,还能在日常生活中配合客户端( https://github.com/knowlimit/ChatGPT-NextWeb )使用,不会造成浪费,充值额度1刀起,随用随充。
AI代理地址:如云API( https://api.ruyun.fun/ ),该网站支持自主充值所需金额,无捆绑消费,支持市面上全部大模型,兑换比例为2人民币=1美元,base_url默认使用 https://api.ruyun.fun/即可。
# 带[ ]括号的为多选,不带的为单选
boss:
sayHi: "您好,我有7年工作经验,还有AIGC大模型、Java,Python,Golang和运维的相关经验,希望应聘这个岗位,期待可以与您进一步沟通,谢谢!" #必须关闭boss的自动打招呼
keywords: [ "大模型工程师", "AI工程师", "Java", "Python", "Golang" ] # 需要搜索的职位,会依次投递
industry: [ "不限" ] # 公司行业,最多选三个,若需其他行业,需自行在相关代码枚举部分添加
cityCode: [ "上海" ] # 仅列举部分城市,目前支持:全国、北京、上海、广州、深圳、成都,无所需城市需自行查找添加
experience: [ "不限" ] # 工作经验选项:"应届毕业生", "1年以下", "1-3年", "3-5年", "5-10年", "10年以上"
jobType: "不限" #求职类型选项:"全职", "兼职"
salary: "不限" # 薪资(单选)选项:"3K以下", "3-5K", "5-10K", "10-20K", "20-50K", "50K以上"
degree: [ "不限" ] # 学历选项:"初中及以下", "中专/中技", "高中", "大专", "本科", "硕士", "博士"
scale: [ "不限" ] # 公司规模选项:"0-20人", "20-99人", "100-499人", "500-999人", "1000-9999人", "10000人以上"
stage: [ "不限" ] # 公司融资阶段选项:"未融资", "天使轮", "A轮", "B轮", "C轮", "D轮及以上", "已上市", "不需要融资"
expectedSalary: [ 25,35 ] #期望薪资,单位为K,第一个数字为最低薪资,第二个为最高薪资,只填一个数字默认仅要求最低薪资
filterDeadHR: true # 是否过滤不活跃HR,该选项会过滤半年前活跃的HR
enableAI: true #是否开启AI检测与自动生成打招呼语
job51:
jobArea: [ "上海" ] #工作地区目前仅支持【北京、成都、上海、广州、深圳】
keywords: [ "java", "python", "go", "golang", "大模型", "软件工程师" ] #搜索关键词,会依次投递
salary: [ "不限" ] #薪资范围最多选5个,选项包括【"2千以下", "2-3千", "3-4.5千", "4.5-6千", "6-8千", "0.8-1万", "1-1.5万", "1.5-2万", "2-3万", "3-4万", "4-5万", "5万以上"】
lagou:
keywords: [ "AI工程师","Java","Golang","Python" ] #搜索关键词
cityCode: "上海" #拉勾城市名无限制,直接填写即可
salary: "不限" #薪资选项:【"不限","2k以下", "2k-5k", "5k-10k", "10k-15k", "15k-25k", "25k-50k", "50k以上"】
scale: [ "不限" ] #公司规模选项:【"不限","少于15人", "15-50人", "50-150人", "150-500人", "500-2000人", "2000人以上"】
gj: "在校/应届,3年及以下"
liepin:
cityCode: "上海" # 目前支持的城市:全国、北京、上海、广州、深圳、成都
keywords: [ "Java", "Python", "Golang", "大模型" ]
salary: "不限" # 填写格式如"15$30",代表15k-30k
zhilian:
cityCode: "上海"
salary: "25001,35000" #薪资区间,格式为“最低薪资,最高薪资”
keywords: [ "AI", "Java", "Python", "Golang" ]
ai:
introduce: "我熟练使用Spring Boot、Spring Cloud、Alibaba Cloud及其生态体系,擅长MySQL、Oracle、PostgreSQL等关系型数据库以及MongoDB、Redis等非关系型数据库。熟悉Docker、Kubernetes等容器化技术,掌握WebSocket、Netty等通信协议,拥有即时通讯系统的开发经验。熟练使用MyBatis-Plus、Spring Data、Django ORM等ORM框架,熟练使用Python、Golang开发,具备机器学习、深度学习及大语言模型的开发与部署经验。此外,我熟悉前端开发,涉及Vue、React、Nginx配置及PHP框架应用" #喂给AI的个人优势介绍提示词,可根据自身情况修改
prompt: "我目前在找工作,%s,我期望的岗位方向是【%s】,目前我需要投递的岗位名称是【%s】,这个岗位的要求是【%s】,如果这个岗位和我的期望与经历基本符合,注意是基本符合,那么请帮我写一个给HR打招呼的文本发给我,如果这个岗位和我的期望经历完全不相干,直接返回false给我,注意只要返回我需要的内容即可,不要有其他的语气助词,重点要突出我和岗位的匹配度以及我的优势,我自己写的招呼语是:【%s】,你可以参照我自己写的根据岗位情况进行适当调整" #AI生成打招呼语的提示词,可自行修改
bot:
is_send: true #是否开启企业微信消息推送
每日仅可发起100次新聊天,活跃度还可以,但每日投递次数较少。设置配置文件的sayHi为你的打招呼语,否则会投递失败。投递结束后会自动更新黑名单企业,发送过不合适等消息的HR所在公司会被加入黑名单,不会再投递该公司。
提醒:找工作不易,但不要过度“讨好”,打工人不是“牛马”!
发送图片简历:在resources文件夹下,将pdf简历转换为resume.jpg,同时把配置项sendImgResume设为true,就能自动发送图片简历。pdf转图片需要WPS会员,若找不到相关工具,可联系群主帮忙转换,费用为5元/次。
目标薪资设置:expectedSalary: [25,35],单位为K,第一个数字是最低薪资,第二个是最高薪资,只填一个数字默认仅要求最低薪资,不限制最高薪资。
黑名单设置:在data.json文件中设置黑名单数据,投递结束后会查询聊天记录,将不合适的公司添加进去。
data.json //黑名单数据,在投递结束后会查询聊天记录寻找不合适的公司添加进去
├── blackCompanies: List.of("复深蓝"); // 公司黑名单,多个公司用逗号分隔
├── blackRecruiters: List.of("猎头"); // 排除招聘人员,比如猎头
└── blackJobs: List.of("外包", "外派"); // 排除岗位,比如外包,外派
投递有上限,且会限制搜索到的岗位数量,活跃HR较少,不建议使用。目前投递一段时间后会出现投递上限,临时解决方式是投一页后暂停10秒再继续。
投递无上限,但会限制投递频率,活跃HR少,能投递的岗位也不多。默认使用微信扫码登录,请绑定微信账号。需要指定默认投递简历(在线简历或附件简历),否则会投递失败。
由于拉勾反爬机制较严格,代码中添加了大量sleep语句,导致效率较慢。建议拉勾脚本运行一段时间后即可,配合手动在App或微信小程序投递,效果更好。目前拉勾存在玄学bug,投递时可能随机失败,若有能解决的技术人员,欢迎联系。
默认打招呼无上限,主动发消息有上限,虽然成功率不高,但岗位数量多。需要在猎聘App最新版设置打招呼语(默认或自定义均可),这样就能自动发送消息,不会被限制。仅支持微信扫码登录,请绑定微信账号。
投递上限约100个,岗位质量较差,只有在走投无路时可考虑。需要指定默认投递简历(在线简历或附件简历),否则会投递失败。仅支持微信扫码登录,请绑定微信账号。
直接运行你想要投递平台对应的代码即可。
目前默认Boss会定时投递两次,可修改相关代码调整投递时间。每个包下的Scheduled文件对应单独平台的定时投递,例如BossScheduled.java就是Boss平台每天定时投递的文件。定时投递第一次运行时会立即投递一次,到第二天设定时间会再次投递,时间可在代码中自行修改。
在Windows平台下,配置任务计划,执行run_startall.bat脚本就能实现批量投递,时间可自行设定。StartAll.java和BossScheduled.java脚本能一键启动所有平台,可根据需求修改编辑,选择需要的平台。
本项目文档已相对完善,若运行时仍有问题,可添加QQ群联系群主或在群内沟通。
本项目不支持服务器部署,无需尝试。因为招聘网站若检测到访问者为服务器IP,不会返回任何网站数据。在开发与部署过程中遇到问题,可在群内沟通,但群内同学没有义务必须解决你的问题,请保持礼貌提问的态度。
本项目是免费开源项目,非Saas类出售商品,不会考虑兼容所有设备及满足所有人的需求。若多位同学有相同需求,可提出issue,需求具备一定普遍性时会考虑开发;其他问题若有能力可自行修改,若无能力可联系群主,非诚勿扰。
AI学术写作助手:学术论文润色和语言优化工具
Gemini对话与提示管理扩展工具 Gemini Voyager
AI驱动的股票研究平台 Multi-Agent Investment Research Platform
AI驱动的加密货币自动化交易系统 open-nof1.ai
基于Next.js、AI SDK和Workflow DevKit构建的线索鉴定与人工审核代理工具 Lead Agent
XiaomiMiMo/MiMo-Audio-7B-Instruct模型微调工具MiMo-Audio-Training
基于DeepSeek-OCR模型的文档解析工具 DeepSeek-OCR Studio
AI-Trader:让多个AI模型在纳斯达克100股票市场中进行完全自主的零人工干预的竞争性交易
辅助软件开发任务和终端操作的命令行代理工具 Kimi CLI
AI 编码代理工具 deer-code,帮助开发者学习和构建智能的编码助手