AIHawk-FOSS / Auto_Jobs_Applier_AI_Agent

Auto_Jobs_Applier_AI_Agent by AIHawk is an AI Agent that automates the jobs application process. Utilizing artificial intelligence, it enables users to apply for multiple jobs in an automated and personalized way.
https://aihawk.co/
Other
22.22k stars 3.27k forks source link
application-resume automate automation bot challenge chatgpt chrome gpt human-resources job jobs jobsearch jobseeker opeai python python3 resume scraper scraping selenium

# Auto_Jobs_Applier_AIHawk ![CI](https://github.com/feder-cr/Auto_Jobs_Applier_AIHawk/actions/workflows/ci.yml/badge.svg) **🤖🔍 Your AI-powered job search assistant. Automate applications, get personalized recommendations, and land your dream job faster.** Join our community: [Telegram](https://t.me/AIhawkCommunity) (for Normal user) | [Discord](https://discord.gg/mMZcMTH9K6) (for Open Source contributors) [![Telegram](https://img.shields.io/badge/Telegram-2CA5E0?style=for-the-badge&logo=telegram&logoColor=white)](https://t.me/AIhawkCommunity) [![Discord](https://img.shields.io/badge/Discord-7289DA?style=for-the-badge&logo=discord&logoColor=white)](https://discord.gg/mMZcMTH9K6)

Creator feder-cr, Co-Founder of AIHawk
As AIHawk is focusing on their proprietary product - solving problems in hiring for companies, currently this project is led, managed, and maintained by a group of open-source contributors, with a focus on building tools to help job seekers land the jobs they deserve.

Project Maintainers / Leads: surapuramakhil, sarob, cjbbb

We are looking to expand our FOSS maintainers team! If you are from a non-technical background, you can be part of the project management team, triaging issues, and shaping the project. If you are a technical person, you can join in doing code reviews, participating in releases, and buidling better version of this product.

reach out to surapuramakhil on Discord. Special thanks

Auto_Jobs_Applier_AIHawk is continuously evolving, and your feedback, suggestions, and contributions are highly valued. Feel free to open issues, suggest enhancements, or submit pull requests to help improve the project. Let's work together to make Auto_Jobs_Applier_AIHawk a powerful tool for job seekers worldwide.

Table of Contents

  1. Introduction
  2. Features
  3. Installation
  4. Configuration
  5. Usage
  6. Documentation
  7. Troubleshooting
  8. Conclusion
  9. Contributors
  10. License
  11. Disclaimer

Introduction

Auto_Jobs_Applier_AIHawk is a cutting-edge, automated tool designed to revolutionize the job search and application process. In today's fiercely competitive job market, where opportunities can vanish in the blink of an eye, this program offers job seekers a significant advantage. By leveraging the power of automation and artificial intelligence, Auto_Jobs_Applier_AIHawk enables users to apply to a vast number of relevant positions efficiently and in a personalized manner, maximizing their chances of landing their dream job.

The Challenge of Modern Job Hunting

In the digital age, the job search landscape has undergone a dramatic transformation. While online platforms have opened up a world of opportunities, they have also intensified competition. Job seekers often find themselves spending countless hours scrolling through listings, tailoring applications, and repetitively filling out forms. This process can be not only time-consuming but also emotionally draining, leading to job search fatigue and missed opportunities.

Enter Auto_Jobs_Applier_AIHawk: Your Personal Job Search Assistant

Auto_Jobs_Applier_AIHawk steps in as a game-changing solution to these challenges. It's not just a tool; it's your tireless, 24/7 job search partner. By automating the most time-consuming aspects of the job search process, it allows you to focus on what truly matters - preparing for interviews and developing your professional skills.

Features

  1. Intelligent Job Search Automation

    • Customizable search criteria
    • Continuous scanning for new openings
    • Smart filtering to exclude irrelevant listings
  2. Rapid and Efficient Application Submission

    • One-click applications
    • Form auto-fill using your profile information
    • Automatic document attachment (resume, cover letter)
  3. AI-Powered Personalization

    • Dynamic response generation for employer-specific questions
    • Tone and style matching to fit company culture
    • Keyword optimization for improved application relevance
  4. Volume Management with Quality

    • Bulk application capability
    • Quality control measures
    • Detailed application tracking
  5. Intelligent Filtering and Blacklisting

    • Company blacklist to avoid unwanted employers
    • Title filtering to focus on relevant positions
  6. Dynamic Resume Generation

    • Automatically creates tailored resumes for each application
    • Customizes resume content based on job requirements
  7. Secure Data Handling

    • Manages sensitive information securely using YAML files

Installation

Confirmed successful runs on the following:

Option 1: Using Python Virtual Environment

  1. Download and Install Python:

    Ensure you have the last Python version installed. If not, download and install it from Python's official website. For detailed instructions, refer to the tutorials:

  2. Download and Install Google Chrome:

    • Download and install the latest version of Google Chrome in its default location from the official website.
  3. Clone the repository:

    git clone https://github.com/feder-cr/Auto_Jobs_Applier_AIHawk.git
    
    cd Auto_Jobs_Applier_AIHawk
  4. Activate virtual environment:

    python3 -m venv virtual
    source virtual/bin/activate

    or for Windows-based machines -

    .\virtual\Scripts\activate
  5. Install the required packages:

    pip install -r requirements.txt

Option 2: Using Conda

  1. Install Conda:

  2. Create and activate conda environment:

    # Create new environment
    conda create -n aihawk python=3.11
    
    # Activate environment
    conda activate aihawk
  3. Clone the repository:

    git clone https://github.com/feder-cr/Auto_Jobs_Applier_AIHawk.git
    cd Auto_Jobs_Applier_AIHawk
  4. Install dependencies:

    # Install from requirements.txt
    pip install -r requirements.txt

Configuration

1. secrets.yaml

This file contains sensitive information. Never share or commit this file to version control.

2. work_preferences.yaml

This file defines your job search parameters and bot behavior. Each section contains options that you can customize:

2.1 config.py - Customize LLM model endpoint

3. plain_text_resume.yaml

This file contains your resume information in a structured format. Fill it out with your personal details, education, work experience, and skills. This information is used to auto-fill application forms and generate customized resumes.

Each section has specific fields to fill out:

PLUS. data_folder_example

The data_folder_example folder contains a working example of how the files necessary for the bot's operation should be structured and filled out. This folder serves as a practical reference to help you correctly set up your work environment for the job search bot.

Contents

Inside this folder, you'll find example versions of the key files:

These files are already populated with fictitious but realistic data. They show you the correct format and type of information to enter in each file.

Using the data_folder_example

Using this folder as a guide can be particularly helpful for:

  1. Understanding the correct structure of each configuration file
  2. Seeing examples of valid data for each field
  3. Having a reference point while filling out your personal files

Usage

  1. Account language To ensure the bot works, your account language must be set to English.

  2. Data Folder: Ensure that your data_folder contains the following files:

    • secrets.yaml
    • config.yaml
    • plain_text_resume.yaml
  3. Output Folder: Contains the output of the bot.

    • data.json results of the --collect mode
    • failed.json failed applications
    • open_ai_calls.json all the calls made to the LLM model
    • skipped.json applications that were skipped
    • success.json successful applications

    Note: answers.json is not part of the output folder and can be found in the root of the project. It is used to store the answers of the questions asked to the user. Can be used to update the bot with corrected answers. Search for Select an option, 0, Authorized, and how many years of to verify correct answers.

  4. Run the Bot:

    Auto_Jobs_Applier_AIHawk offers flexibility in how it handles your pdf resume:

Troubleshooting

1. OpenAI API Rate Limit Errors

Error Message:

openai.RateLimitError: Error code: 429 - {'error': {'message': 'You exceeded your current quota, please check your plan and billing details. For more information on this error, read the docs: https://platform.openai.com/docs/guides/error-codes/api-errors.', 'type': 'insufficient_quota', 'param': None, 'code': 'insufficient_quota'}}

Solution:

2. Easy Apply Button Not Found

Error Message:

Exception: No clickable 'Easy Apply' button found

Solution:

3. Incorrect Information in Job Applications

Issue: Bot provides inaccurate data for experience, CTC, and notice period

Solution:

4. YAML Configuration Errors

Error Message:

yaml.scanner.ScannerError: while scanning a simple key

Solution:

5. Bot Logs In But Doesn't Apply to Jobs

Issue: Bot searches for jobs but continues scrolling without applying

Solution:

General Troubleshooting Tips

For further assistance, please create an issue on the GitHub repository with detailed information about your problem, including error messages and your configuration (with sensitive information removed).

Documentation

For Users

For Developers

Conclusion

Auto_Jobs_Applier_AIHawk provides a significant advantage in the modern job market by automating and enhancing the job application process. With features like dynamic resume generation and AI-powered personalization, it offers unparalleled flexibility and efficiency. Whether you're a job seeker aiming to maximize your chances of landing a job, a recruiter looking to streamline application submissions, or a career advisor seeking to offer better services, Auto_Jobs_Applier_AIHawk is an invaluable resource. By leveraging cutting-edge automation and artificial intelligence, this tool not only saves time but also significantly increases the effectiveness and quality of job applications in today's competitive landscape.

Star History

Star History Chart

If you like the project please star ⭐ the repository!

Special Thanks

Contributors

Made with contrib.rocks.

License

This project is licensed under the MIT + Commons Clause License - see the LICENSE file for details.

Disclaimer

This tool, Auto_Jobs_Applier_AIHawk, is intended for use at your own risk. The creators / maintainers / contributors assume no responsibility for any consequences arising from its use. Users are advised to comply with the terms of service of relevant platforms and adhere to all applicable laws, regulations, and ethical guidelines. The use of automated tools for job applications may carry risks, including potential impacts on user accounts. Proceed with caution and at your own discretion.

Back to top 🚀