Skip to content

Releases: Gabo-Tech/EasyApply-Linkedin

v1.2.0

22 Jul 22:57
Compare
Choose a tag to compare

EasyApply-Linkedin v1.2.0 Release Notes

New Features

  • Added support for LinkedIn job collections:
    • small_business
    • remote_jobs
    • easy_apply
    • top_applicant
  • Implemented a mechanism to prioritize job collections over regular filters if a collection is specified in the config.json.

Enhancements

  • Improved resilience in handling job applications:
    • The script continues with the next job if an error occurs during application.
    • Enhanced logging for better debugging and tracking of the application process.
  • Enhanced error handling for:
    • Stale element references
    • Element click interception
    • Timeout exceptions

Bug Fixes

  • Fixed issues where the script would stop upon encountering an error while applying to a job.
  • Addressed problems with element interactions by adding retry logic for finding and interacting with elements.

Usage

  1. Add a new field collection in the config.json to specify a job collection URL (optional).
  2. Ensure the collection field is empty if you want to use the regular job search filters.
  3. Run the script as usual, and it will apply to jobs based on the specified collection or filters.
{
    "email": "[email protected]",
    "password": "your-password",
    "keywords": [
        "JavaScript",
        "TypeScript",
        "Angular",
        "React",
        "Node",
        "Express"
    ],
    "keywordsToAvoid": [
        "C++",
        ".NET",
        "PHP",
        "Python"
    ],
    "locations": [
        "United Kingdom",
        "United States",
        "Canada"
    ],
    "driver_path": "/path/to/geckodriver",
    "sortBy": "R",
    "filters": {
        "easy_apply": true,
        "experience": [],
        "jobType": [
            "Contract"
        ],
        "timePostedRange": [],
        "workplaceType": [
            "Remote"
        ],
        "less_than_10_applicants": false
    },
    "collection": "easy_apply",  // Specify collection here (optional)
    "aiContext": { ... },
    "user_inputs": { ... }
}

v1.1.0

16 Jul 12:56
Compare
Choose a tag to compare

Release Notes

[1.1.0] - 2024-07-16

Added

  • Enhanced Keyword Search Format: Updated the job search functionality to construct the keyword search in the format: JavaScript OR TypeScript NOT .... This ensures the search criteria follow the required structure.

Improved

  • Dropdown Response Handling: Improved the method for getting responses from dropdowns. The available options are now displayed in the terminal for user selection, providing better clarity and usability.

Fixed

  • Minor Bug Fixes: Addressed minor bugs and stability issues to improve the overall performance of the application.

Changes Summary

  • Job Search: Adjusted keyword search format to JavaScript OR TypeScript NOT ....
  • User Interaction: Enhanced dropdown handling to display available options for better user interaction.

Contributors

  • Thanks to all contributors who helped with this release.

Release Notes for EasyApplyLinkedin v1.0.0

11 Jul 12:41
Compare
Choose a tag to compare

Version: v1.0.0

Release Date: 2024-07-11

Overview

The first official release of the EasyApplyLinkedin automation tool. This tool automates job applications on LinkedIn using predefined filters and criteria. It leverages Selenium to interact with the LinkedIn web interface.

Features

  • Automated Login: Automatically logs into LinkedIn using provided credentials.
  • Dark Mode: Sets LinkedIn theme to dark mode by adding the li_theme cookie.
  • Job Search Filters:
    • Time posted (Any Time, Last Month, Past Week, Past 24 hours)
    • Experience levels (Internship, Entry level, Associate, Mid-Senior level, Director, Executive)
    • Workplace types (Remote, Hybrid, On-site)
    • Job types (Full-time, Part-time, Contract, Internship, Temporary)
    • Location-based search with predefined locations.
  • Easy Apply Handling: Automatically navigates and interacts with the Easy Apply process on LinkedIn.
  • Error Logging: Logs errors and information throughout the application process.
  • JSON Configuration: Reads user data and configurations from a JSON file.
  • Retry Logic: Retries finding elements a few times to handle transient issues.
  • Session Management: Manages browser sessions, including login and logout.

Installation

Requirements

  • Python 3.x
  • Selenium
  • Firefox WebDriver

Setup

  1. Clone the repository:

    git clone https://github.com/Gabo-Tech/EasyApply-Linkedin.git
    cd EasyApply-Linkedin
  2. Install the required packages:

    pip install selenium
  3. Set up the configuration file:

    • Create a config.json file in the root directory with the following structure:
      {
          "email": "<your-email>",
          "password": "<your-password>",
          "keywords": ["<keyword1>", "<keyword2>"],
          "keywordsToAvoid": ["<keywordToAvoid1>", "<keywordToAvoid2>"],
          "locations": ["<location1>", "<location2>"],
          "filters": {
              "easy_apply": true,
              "experience": ["Entry level", "Associate"],
              "jobType": ["Full-time", "Part-time"],
              "timePostedRange": ["Past 24 hours"],
              "workplaceType": ["Remote"],
              "less_than_10_applicants": true
          },
          "sortBy": "DD",
          "driver_path": "<path-to-geckodriver>"
      }

Usage

  1. Run the script:

    python main.py
  2. Follow the prompts (if any) to complete the application process.

Changelog

  • Initial Release:
    • Automated LinkedIn job application process.
    • Dark mode support via cookie setting.
    • Error logging and session management.
    • Configurable search filters and locations.

Known Issues

  • CAPTCHA handling requires manual intervention.
  • Some elements may occasionally not be found due to dynamic loading times; retry logic is in place but may need adjustments.

Future Enhancements

  • Improve CAPTCHA handling automation.
  • Add support for more LinkedIn job filters.
  • Enhance error handling and logging mechanisms.

Acknowledgements

  • Thanks to all contributors and users who helped in testing and providing feedback.

For more details and to contribute, visit the GitHub repository.