loks666/get_jobs

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

📚 Project Overview

Get Jobs (工作无忧) is an open‑source automation tool that helps job seekers in China submit their résumés to multiple online recruitment platforms (Boss 直聘, Liepin, 51Job, Zhilian, etc.) with minimal manual effort. It combines a web‑based GUI, a Spring‑Boot backend, and a headless browser driven by Playwright to log in, filter listings, generate AI‑crafted outreach messages, and optionally send an image version of the résumé.


🛠️ Core Technologies

Layer Tech
Backend Java 21, Spring Boot 3.5, Gradle 9.7
Browser automation Playwright (Patchright fork) – auto‑downloads the correct ChromeDriver
Data store SQLite (template DB with 16 tables & lookup dictionaries)
Frontend Next.js 16 + React 19 (compiled into dist/ for the Spring resources)
AI integration Calls any OpenAI‑compatible API (configurable BASE_URL, API_KEY, MODEL) to generate personalized “say‑hi” messages
Notifications Enterprise‑WeChat webhook for real‑time push

⚙️ How It Works

  1. Setup – Clone the repo, install JDK 21 & Gradle, download the provided empty SQLite file (getjobs.db.template → getjobs.db) and place it under db/.
  2. Login – The app launches a headless Chromium instance, logs into each recruitment site (mostly via QR‑code‑based WeChat login) and stores the session cookies for long‑term reuse.
  3. Configuration – Through the web UI you set:
    • Target city, industry, experience, salary, etc. (uses the pre‑filled dictionaries).
    • AI parameters (BASE_URL, API_KEY, MODEL) for generating a short greeting.
    • Whether to send an image résumé (resume.jpg).
  4. Filtering – The scraper filters out inactive HRs, head‑hunter posts, and positions outside the desired salary range.
  5. AI‑assisted outreach – For each matching job on Boss 直聘, the system calls the configured LLM to produce a personalized greeting, then automatically sends it together with the optional image résumé.
  6. Blacklist & Reporting – Companies that reply negatively are added to a blacklist to avoid future submissions. All actions are pushed to a WeChat bot for instant monitoring.
  7. Run – Execute the Spring Boot entry point GetJobsApplication.java; the UI is served at http://localhost:<port>.

🎯 Primary Use‑Cases

Who What they gain
Recent graduates & job‑hoppers in China Bulk‑apply to dozens of listings daily without manual copy‑pasting.
Freelancers looking for contract work Quickly test many platforms while keeping a record of applications in SQLite.
Developers wanting a template for web‑automation + LLM integration Ready‑made Spring‑Boot + Playwright + OpenAI‑compatible workflow.

📦 Getting Started (Quick Steps)

# 1. Clone & enter
git clone https://github.com/loks666/get_jobs.git && cd get_jobs

# 2. Install JDK 21 & Gradle (or use the wrapper)
# 3. Download the empty DB from the latest release
wget https://github.com/loks666/get_jobs/releases/download/vX.X.X/getjobs.db.template -O db/getjobs.db

# 4. Set AI env vars (optional, required for Boss AI greetings)
export HOOK_URL="https://qyapi.weixin.qq.com/cgi-bin/webhook/send?key=..."
export BASE_URL="https://api.openai.com"
export API_KEY="sk-..."
export MODEL="gpt-5-nano"

# 5. Start the app
./gradlew bootRun   # or run GetJobsApplication from your IDE

Open a browser, go to http://localhost:8080, fill in your city/role, upload resume.jpg if desired, and hit Start.


🚨 Limitations & Caveats

  • Domestic focus – Designed for Chinese job portals; using a VPN or external proxy can break page loading.
  • No server‑side deployment – The authors state the sites block non‑human IPs, so the tool is meant for a personal PC.
  • Platform‑specific quirks – 51Job and Zhilian have strict daily limits; the tool may stop after reaching them.
  • Commercial use prohibited – Licensed under PolyForm Non‑Commercial 1.0.0; you must obtain a commercial license from the author for any paid use.
  • AI cost – Only the Boss 直聘 greeting uses the LLM; the README estimates ~ $0.06 per day with the tiny gpt‑5‑nano model.

🛡️ License & Community

  • License – PolyForm Non‑Commercial 1.0.0 (free for personal, non‑commercial use).
  • Support – Active QQ groups (≈ 1900 & 322 members) for troubleshooting, plus a GitHub Issues page.
  • Contributing – PRs must target the dev branch and follow a strict emoji‑prefixed commit message format; the project enforces a CLA.

🔗 Related Projects (by the same author)

The README also lists several AI‑related repos (RL‑MiniGames, YOLOv5, disease‑prediction, etc.) and utility tools (WeChatVault, FlyAI). They are not required for Get Jobs but showcase the author’s broader interests.


In a nutshell: Get Jobs is a Java‑based, GUI‑driven automation suite that scrapes Chinese recruitment sites, filters listings, and uses an LLM to craft outreach messages, aiming to streamline bulk job applications for individual users.

Related

  • Project
  • Project
  • Project
  • Project
  • Project