get_jobs

get_jobs

💼【AI找工作助手】全平台自动投简历脚本:(boss、前程无忧、猎聘、拉勾、智联招聘)

Stars: 1482

Visit
 screenshot

Get Jobs is a tool designed to help users find and apply for job positions on various recruitment platforms in China. It features AI job matching, automatic cover letter generation, multi-platform job application, automated filtering of inactive HR and headhunter positions, real-time WeChat message notifications, blacklisted company updates, driver adaptation for Win11, centralized configuration, long-lasting cookie login, XPathHelper plugin, global logging, and more. The tool supports platforms like Boss直聘, 猎聘, 拉勾, 51job, and 智联招聘. Users can configure the tool for customized job searches and applications.

README:

🍀Get Jobs【工作无忧】

Stars QQ交流群 License Issues closed Forks

黑暗无论多么长,光明迟早总是会来的

写在前面

我知道你心中有煎熬,有焦虑,像一柄长剑悬在头顶,随时可能落下。
若黑夜终将黑暗,那你即是黎明。
黎明前的黑暗,最冷、最险、最难熬。
但断剑重铸之日,便是英雄归来之时。
挺过这一刻,纵使刀山火海,又有何惧?

  • 你找不到工作,是因为大环境不好吗?【很重要】

  • 许愿墙

    • 如果你有你心仪的工作,请在我这里许下愿望,如果实现了,请记得回来更新状态
    • 许愿墙为飞书文档,你可以编辑好以后,导出为xlsx文档,然后覆盖本项目中resources文件夹中的"许愿墙.xlsx"文档
    • 接下来,你就可以把xlsx文档,提交到main分支,然后……你就是本项目的开发者之一了。
    • 你可以在你的简历中加上一条,github,热门开源项目开发者之一。
    • 但是你需要尽可能的,熟悉本项目的逻辑,去想象某一块功能就是你做的,这样可以更从容,更优雅的"吹牛逼”。
    • 只要你相信你自己,本项目就会帮你,你要记住,是你自己拯救的你自己。
  • 目前该项目存在的问题

    • 当前招聘市场,有效的软件仅有boss和猎聘
    • 如果boss出现掉线等问题,1.修改间隔等待时间 2.当天停止投递,第二天接着投,否则可能会封号
    • 最重要的事情,不要依赖程序投递boss!!!手机上的boss,比本程序网页端靠谱的多,当你手机投的很累,又没有投够100个,请再使用本程序的boss投递!
    • 本项目为github热门开源项目,同时目前该项目已经申请了Intelli的开源支持计划,加入开发组意味着你可以获得Intelli编辑器官方的免费全家桶永久使用权。所以欢迎联系我
    • 安卓版本开发中,我有auto.js的资源,我可以无偿分享,只要你对auto.js感兴趣,或者你会,你想学,都可以联系我,以及如果有谁可以开发ios端Appium的能力,也请快速联系我
    • 本项目开源协议遵循MIT协议,是,你可以商业化,但是!我真的希望你能够帮助更多的人,希望可以团结起来,冲破这片天!
  • 本项目目前需要的资源

    • 内推资源,之前有人找我,但是很忙我忘记处理了,想找他的时候已经找不到了,如果看到,或者你有,也可以联系我。
    • 简历修改,面试指导,背调跟随,如果你有相关的资源,请联系我。

🌴源码地址

AI代理购买

  • https://api.ruyun.fun/ [支持市面全部大模型!折扣比例2比1!1刀也可充,详情请联系站内客服]

🌟 特色功能

  • 💥 AI 智能匹配:AI检测岗位匹配度,并根据JD自动撰写个性化的打招呼语(仅限 Boss 直聘)。
  • 📷️ 图片简历:Boos直聘可在发送打招呼语后自动发送图片简历,无须等待HR索要简历,有效提高回复率。
  • ⏰ 定时投递:一键投递所有平台,可设置定时投递,第二天自动重新投递,省时省力。
  • 🔎 智能过滤:自动过滤 不活跃 HR猎头岗位目标薪资,让你的简历投递更精准。
  • 📢 实时通知:通过企业微信消息推送,实时掌握简历投递情况,不错过任何机会。
  • 🚫 黑名单功能:自动更新黑名单企业,避免重复投递不合适的公司,提高投递效率。
  • 🛠️ 易于配置:集中化配置,只需修改配置文件即可自定义筛选条件,轻松上手。
  • 🔄 持久登录:支持超长 Cookie 登录,大部分平台每周仅需扫码一次,减少重复操作。

🔞️ 注意事项

  • ❌必须要关闭墙外代理,由于主要针对的国内平台,墙外代理会导致页面加载缓慢
  • 💪🏻如你有“折腾精神”希望自己配置,QQ群内提供免费答疑,如你不想麻烦,可进入群聊查看群公告
  • 📰由于不同系统的页面不一样,导致可能不兼容,文末会给出文档,尽可能让大家能自定义修改
  • 🚩如您不方便访问github,可使用码云镜像(中国大陆)版本:gitee/getjobs

已经有人在交流群里 发广告 等与本项目无关的信息
如果带着不同目的或者没想清楚就进群的
一经发现群主会对您的家人及朋友进行亲切(没有素质)的问候
并将您请出群聊,请珍惜交流的机会,谢谢!
我在22年失业玩了命的学AI,如今找到了AI工程师的工作
救了我的,是曾经那个疯狂努力的自己,我希望你也可以

🚀 如何使用?

1️⃣ 使用git拉取代码

git clone https://github.com/loks666/get_jobs.git
cd get_jobs

2️⃣ 环境配置:JDK21、Maven、Chrome、ChromeDriver

  • 目前程序自动判断系统环境,使用对应的chromedriver,并进行浏览器操作
  • 但是你的Chrome版本必须是在Chrome官网下载的,并且为对应版本( 默认最新),才可使用
  • 非windows的操作系统,请自行下载对应的驱动到src/main/resources路径下解压使用

更多环境配置详情请点击:📚 环境配置

3️⃣ 修改配置文件(一般默认即可,需要修改自己的地区和岗位)

  • 🔩 通用配置

    • 日志文件在 target/logs 目录下,所有日志都会输出在以运行日期结尾的日志文件中
    • Constant.WAIT_TIME:超时等待时间,单位秒,用于等待页面加载
    • cookie登录: 扫码后会自动保存cookie.json文件在代码运行目录下,换号直接删除cookie.json即可
    • 每个平台的配置转换码都在平台文件夹下的Enum类里,找到相应的代码添加到类中即可
  • 📢 企业微信消息推送设置

    • .env_template文件重命名为.env
    • 在企业微信中创建一个群聊,然后添加机器人,获取到机器人URL,复制到.env文件中的HOOK_URL即可
    • 保持config.yaml文件中bot.is_send为true
    • 企业微信推送示例
      企业微信推送示例

    完成以上配置,在每个平台投递结束简历后,便会在企业微信的群聊内,推送岗位的投递情况,无须改动其他代码

  • 🤖 AI配置

    • .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:调用的API KEY
    • MODEL:需要使用的模型名称

    根据测试,boss直聘在每天所有的岗位投递结束后消耗的额度(gpt-4o-mini)大约在0.06美元(6美分) 左右,代理除了在本项目中可用,也可使用客户端(https://github.com/knowlimit/ChatGPT-NextWeb) 在日常生活中使用,所以不会浪费,充值额度1刀起,随用随充
    💥注意!AI代理地址:如云API:https://api.ruyun.fun/ ,该网站可自主充值需要的金额,无任何捆绑消费,支持市面上全部大模型,2人民币=1美元,base_url默认使用"https://api.ruyun.fun/" 即可

    • AI生成的打招呼语示例
      AI生成的打招呼语示例
  • ⚙️ 主要的配置文件config.yaml)

# 带[ ]括号的,就是多选,不带的就是单选
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 #开启企业微信消息推送
  • boss直聘(Boss.java)【最推荐!每日仅可发起100次新聊天,活跃度还行,但是每日投递次数太少】

    注意:设置配置文件的sayHi为你的打招呼语,否则会投递失败
    投递结束后会自动更新黑名单企业,发送过不合适等消息的HR的公司会加入黑名单,不会在投递该公司
    现在找工作是很难,但也别做舔狗,打工人不是牛马!

    • 发送图片简历

    在resources文件夹下,将自己的pdf简历转换为resume.jpg,同时配置项sendImgResume为ture,即可自动发送图片简历
    pdf转图片需要wps会员,如果找不到相关工具,可联系群主帮忙转换,5r/次

    • 目标薪资设置:expectedSalary: [ 25,35 ]
      • 单位为K,第一个数字为最低薪资,第二个数字为最高薪资,只填一个数字默认为只要求最低薪水,不要求最高薪水
      data.json //黑名单数据,在投递结束后会查询聊天记录寻找不合适的公司添加进去
          ├── blackCompanies: List.of("复深蓝"); // 公司黑名单,多个用逗号分隔
          ├── blackRecruiters: List.of("猎头"); // 排除招聘人员,比如猎头
          └── blackJobs: List.of("外包", "外派"); // 排除岗位,比如外包,外派
    
  • 51job(Job.java)【投递有上限,且限制搜索到的岗位数量,没什么活人】

    51job现在已经烂掉了,不建议使用
    现在投递一段时间后会出现投递上限
    目前的解决方式是投一页暂停10秒,先这么着吧

  • 拉勾(Lagou.java)【投递无上限,会限制投递的频率,没什么活人而且投不了几个岗位】

    默认使用微信扫码,请绑定微信账号
    拉勾需要指定默认投递简历(在线简历 or 附件简历),否则会投递失败
    拉勾直接使用的是微信扫码登录,运行后直接扫码即可,开箱通用
    但是拉勾由于反爬机制较为严重,代码中嵌套了大量的sleep,导致效率较慢
    这边建议拉勾的脚本运行一段时间后差不多就行了,配合手动在app或者微信小程序投递简历效果更佳!
    拉勾目前有个玄学bug,投递的时候随机失败,可以解决的大佬请联系我

  • 猎聘(Liepin.java)【默认打招呼无上限,主动发消息有上限,虽然成功率不高,好在量大,较为推荐】

    注意:需要在猎聘App最新版设置打招呼语(默或者自定义皆可),即可自动发送消息,不会被限制
    只可微信扫码,请绑定微信账号
    需要使用最新版猎聘手机app设置打招呼文本,只要不主动发消息,可以无限制对猎头打招呼,程序默认为该配置。

  • 智联招聘(ZhiLian.java)【投递上限100左右,岗位质量较差,走投无路可以考虑】

    智联招聘需要指定默认投递简历(在线简历 or 附件简历),否则会投递失败
    只可微信扫码,请绑定微信账号

4️⃣ 运行代码

  • 🏃🏻‍♂️‍➡️ 直接运行你想要投递平台的下的代码即可
    运行图片

5️⃣ 定时投递

  • 目前默认Boss会定时投递两次,可以修改相关代码修改时间
  • 每个包下的Scheduled文件,即使单独针对平台的定时投递,例:BossScheduled.java ,就是boss平台每天定时投递
  • 定时投递第一次运行时会立即投递一次,到了第二天设定的时间,会再次投递,时间可以自行在代码中修改

️ 6️⃣ 批量投递

  • win平台下,配置任务计划,执行run_startall.bat脚本即可,时间可以自己设定
  • StartAll.javaBossScheduled.java 脚本可以一键启动所有平台,需要哪些平台可以自行进行修改编辑

✍🏼 例:Boss投递日志

Boss投递日志

✍🏼 猎聘投递日志

猎聘投递日志

✍🏼 寻找城市码

猎聘投递日志

📧 联系方式

  • V2VDaGF0OkFpckVsaWF1azk1Mjcs6K+35aSH5rOo77ya5pq06aOO6Zuo5bCx6KaB5p2l5LqG

👨🏻‍🔧 QQ群

  • 扫码添加:QQ加群答案为本项目仓库名【get_jobs】
qq群

点击下面的链接可直接加群,微信群由于没有活跃度,所以停止了

🚩 环境部署问题

本项目文档已相对完善,如有运行仍有问题,请添加QQ群联系群主或在群内沟通

  • 请注意:
    1. 本项目不支持服务器部署,无须尝试,如招聘网站发现访问者为服务器IP,不会返回任何网站数据。
    2. 在开发与部署过程有任何问题都可在群内沟通,但群内的同学没有义务必须要解决您的问题,请保持礼貌提问的态度。

注:本项目为免费开源项目,非Saas类出售商品,不会考虑任何兼容的设备以及他人的需求,如多位同学有相同的需求可以提出issue,具有一定需求性会考虑开发,其他的问题有能力就自己修改,否则请联系群主,非诚勿扰。


📑 更新日志

  • 2024-04-15 01:52:18
    1. 新增config.yaml,目前仅需修改配置文件即可,已全平台支持
    2. cookie有效期延长,保持至少一周(拉勾平台除外)【安慰剂】
  • 2024-04-28 15:20:06
    1. boos:自动更新黑名单公司
  • 2024-06-06 01:49:38
    1. boos:若公司名小于2个字或4个字母则不会添加进黑名单
    2. 添加linux系统支持。
  • 2024-06-06 17:41:20
    1. boss支持多城市投递。
  • 2024-08-11 18:39:56
    1. 修复智联,猎聘等不能投递的问题。
    2. 添加定时投递功能
  • 2024-08-12 22:56:20
    1. 添加企业微信消息推送功能

🤝 参与贡献

我们非常欢迎各种形式的贡献
如果你对贡献代码感兴趣
可以查看我们的 Issuesdiscussions
期待你的大展身手,向我们展示你的奇思妙想。 我对代码的要求很高,但是你可以使用GPT进行风格化,如果你想进入开发组,不知道应该开发什么,请群内联系我,你需要去观察,到底哪些功能是实际可用的,和大家一起讨论,尝试提交pr,没有谁的成功是一帆风顺的,可能需要很多次调整,但成功的那一刻,就是值得的!

  • 提交Pr流程:
    1. fork本项目
    2. 从main分支新建分支
    3. 开发完成后提交pull request到lok666/get_jobs的【dev】分支,注意是dev!!!
    4. 等待管理员审核验证提交代码无误后,合并到main分支,可以提前申请进入开发组。


📰 开源协议

📝 License

FOSSA Status


🙅🏻‍♂️ 谨防受骗

  • 近日已经有人反馈,有人拿着本项目免费开源的代码,在闲鱼等小红书各处售卖
  • 本项目代码完全开源免费,请勿上当受骗,请大家擦亮眼睛
  • 这是一个将本项目免费源码的网站,请避雷:http://yjzd.westpy.cn/ 骗子网站 骗子1 骗子2 骗子3 骗子4

☕️ Github Star历史

Stargazers over time

For Tasks:

Click tags to check more tools for each tasks

For Jobs:

Alternative AI tools for get_jobs

Similar Open Source Tools

For similar tasks

For similar jobs