GithubHelp home page GithubHelp logo

logix727 / easyapplybot Goto Github PK

View Code? Open in Web Editor NEW

This project forked from madingess/easyapplybot

2.0 0.0 1.0 8.88 MB

Automate LinkedIn Easy Apply job applications and answer application-specific questions.

Python 100.00%

easyapplybot's Introduction

LinkedIn Easy Apply Bot

Automatically apply to LinkedIn Easy Apply jobs. This bot answers the application questions as well!

This is for educational purposes only. I am not responsible if your LinkedIn account gets suspended or for anything else.

This bot is written in Python using Selenium.

Fork Notes

The original code was failing and no longer maintained. This was forked for the purpose of patching and sharing with new features added.

By Michael Dingess

Setup & Startup

To run the bot, open the command line in the cloned repository directory. Activate the virtual environment and start the bot using these commands:

source venv/bin/activate
python3 main.py

Next, you need to fill out the config.yaml file. Most of this is self-explanatory but if you need explanations please see the end of this README.

email: [email protected]
password: yourpassword

disableAntiLock: False

remote: True

experienceLevel:
 internship: False
 entry: True
 associate: False
 mid-senior level: False
 director: False
 executive: False

jobTypes:
 full-time: True
 contract: True
 part-time: False
 temporary: True
 internship: False
 other: False
 volunteer: False

date:
 all time: True
 month: False
 week: False
 24 hours: False

positions:
 #- First position
 #- A second position
 #- A third position
 #- ...
locations:
 #- First location
 #- A second location
 #- A third location
 #- ...
 - Remote
distance: 25

outputFileDirectory: ~/Documents/Applications/EasyApplyBot/EasyApplyBot/

companyBlacklist:
 #- company
 #- company2

titleBlacklist:
 #- word1
 #- word2

posterBlacklist:
 #- name1
 #- name2

uploads:
 resume: C:\Users\myDirectory\Resume.pdf
 # Cover letter is optional
 #coverLetter: C:\Users\myDirectory\CoverLettter.pdf


# ------------ QA section -------------------

# ------------ Additional parameters: checkboxes ---------------
checkboxes:
 # Do you have a valid driver's license? (yes/no checkbox)
 driversLicence: True
 # Will you now, or in the future, require sponsorship for employment visa status (e.g. H-1B visa status)? (yes/no checkbox)
 # This is relative to the location and your citizenship applying above, and same with legallyAuthorized.
 requireVisa: False
 # Are you legally authorized to work in COUNTRY? (yes/no checkbox)
 legallyAuthorized: True
 # We must fill this position urgently. Can you start immediately? (yes/no checkbox)
 urgentFill: True
 # Are you comfortable commuting to this job's location? (yes/no checkbox)
 commute: False
 # Are you comfortable working in a remote environment? (yes/no checkbox)
 remote: True
 # Are you comfortable taking a drug in accordance with local/state laws? (yes/no checkbox)
 drugTest: True
 # Are you willing to complete an assessment? (yes/no checkbox)
 assessment: True
 # Have you completed the following level of education: DEGREE TYPE? (yes/no checkbox)
 degreeCompleted:
  - High School Diploma
  - Bachelor's Degree
  # - Associate's Degree
  - Master's Degree
  # - Master of Business Administration
  # - Doctor of Philosophy
  # - Doctor of Medicine
  # - Doctor of Law
 # Are you willing to undergo a background check, in accordance with local law/regulations?
 backgroundCheck: True

# ------------ Additional parameters: universityGpa ---------------
universityGpa: 4.0

# ------------ Additional parameters: salaryMinimum ---------------
salaryMinimum: 106000

# ------------ Additional parameters: languages ---------------
languages:
 english: Native or bilingual # None, Conversational, Professional, Native or bilingual

# ------------ Additional parameters: years of experience ---------------
# How many years of work experience do you have ...? (whole numbers only)
experience:
 # normal ones
 Accounting/Auditing: 0
 Administrative : 0
 Advertising : 0
 Analyst : 0
 Art/Creative: 0
 Business Development: 0
 Consulting: 0
 Customer Service: 0
 Distribution Design: 0
 Education: 0
 Engineering: 0
 Finance: 0
 General Business: 0
 Health Care Provider: 0
 Human Resources: 0
 Information Technology: 0
 Legal: 0
 Management: 0
 Manufacturing: 0
 Marketing: 0
 Public Relations: 0
 Purchasing: 0
 Product Management: 0
 Project Management: 0
 Production: 0
 Quality Assurance: 0
 Research: 0
 Sales: 0
 Science: 0
 Strategy/Planning: 0
 Supply Chain: 0
 Training: 0
 Writing/Editing: 0
 #python: 0
 #selenium: 0
 # default to put for any industry/skill that you did not list
 default: 0
 
# ------------ Additional parameters: personal info ---------------
personalInfo:
 First Name: FirstName
 Last Name: LastName
 Phone Country Code: Canada (+1) # See linkedin for your country code, must be exact
 Mobile Phone Number: 1234567890
 Street address: 123 Fake Street
 City: Red Deer, Alberta # Include the state/province as well!
 State: YourState
 Zip: YourZip/Postal
 Linkedin: https://www.linkedin.com/in/my-linkedin-profile
 Website: https://www.my-website.com # github/website is interchangeable here

# ------------ Additional parameters: USA employment crap ---------------
eeo:
 gender: None
 race: None
 vetran: None
 disability: None
 citizenship: yes
 clearance: no

Execute

To run the bot, run the following in the command line:

python3 main.py

Config.yaml Explanations

Just fill in your email and password for linkedin.

email: [email protected]
password: yourpassword

This prevents your computer from going to sleep so the bot can keep running when you are not using it. Set this to True if you want this disabled.

disableAntiLock: False

Set this to True if you want to look for remote jobs only.

remote: False

This is for what level of jobs you want the search to contain. You must choose at least one.

experienceLevel:
 internship: False
 entry: True
 associate: False
 mid-senior level: False
 director: False
 executive: False

This is for what type of job you are looking for. You must choose at least one.

jobTypes:
 full-time: True
 contract: False
 part-time: False
 temporary: False
 internship: False
 other: False
 volunteer: False

How far back you want to search. You must choose only one.

date:
 all time: True
 month: False
 week: False
 24 hours: False

A list of positions you want to apply for. You must include at least one.

positions:
 #- First position
 #- A second position
 #- A third position
 #- ...

A list of locations you are applying to. You must include at least one.

locations:
 #- First location
 #- A second location
 #- A third location
 #- ...
 - Remote

How far out of the location you want your search to go. You can only input 0, 5, 10, 25, 50, 100 miles.

distance: 25

This is the directory where all the job application stats will go to.

outputFileDirectory: C:\Users\myDirectory\

A list of companies to not apply to.

companyBlacklist:
 #- company
 #- company2

A list of words that will be used to skip over jobs with any of these words in there.

titleBlacklist:
 #- word1
 #- word2

A path to your resume and cover letter.

uploads:
 resume: C:\Users\myDirectory\Resume.pdf
 # Cover letter is optional
 #coverLetter: C:\Users\myDirectory\CoverLettter.pdf

Answer these questions with regards to the company you are applying to. For the degrees part uncomment which degrees you have, and do not add other ones since the linkedin questions are generic.

# ------------ Additional parameters: checkboxes ---------------
checkboxes:
 # Do you have a valid driver's license? (yes/no checkbox)
 driversLicence: True
 # Will you now, or in the future, require sponsorship for employment visa status (e.g. H-1B visa status)? (yes/no checkbox)
 # This is relative to the location and your citizenship applying above, and same with legallyAuthorized.
 requireVisa: False
 # Are you legally authorized to work in COUNTRY? (yes/no checkbox)
 legallyAuthorized: True
 # We must fill this position urgently. Can you start immediately? (yes/no checkbox)
 urgentFill: True
 # Are you comfortable commuting to this job's location? (yes/no checkbox)
 commute: False
 # Are you comfortable working in a remote environment? (yes/no checkbox)
 remote: True
 # Are you comfortable taking a drug in accordance with local/state laws? (yes/no checkbox)
 drugTest: True
 # Are you willing to complete an assessment? (yes/no checkbox)
 assessment: True
 # Have you completed the following level of education: DEGREE TYPE? (yes/no checkbox)
 degreeCompleted:
  - High School Diploma
  - Bachelor's Degree
  #- Associate's Degree
  #- Master's Degree
  #- Master of Business Administration
  #- Doctor of Philosophy
  #- Doctor of Medicine
  #- Doctor of Law
 # Are you willing to undergo a background check, in accordance with local law/regulations?
 backgroundCheck: True

Input your university gpa. Must be a decimal value to one decimal point.

# ------------ Additional parameters: universityGpa ---------------
universityGpa: 4.0

Input your minimum desired salary. Must be an integer (no decimal, comma, or currency symbol).

# ------------ Additional parameters: salaryMinimum ---------------
salaryMinimum: 106000

List all your languages. You must put the proficiency as either: None, Conversational, Professional, Native or bilingual

# ------------ Additional parameters: languages ---------------
languages:
 english: Native or bilingual # None, Conversational, Professional, Native or bilingual

Answer the following question for your experience in industries, tools and technologies. Things like programming languages, frameworks, etc. The years of experience must be a whole number. Fill in the default for experience you did not list (keep in mind if it's not zero, you will get your application seen more often).

CAVEAT: This is based on keywords in questions. If you put 'R' for experience with the programming language R, this will match all questions with the character 'r'.

# ------------ Additional parameters: years of experience ---------------
# How many years of work experience do you have ...? (whole numbers only)
experience:
 # normal ones
 Accounting/Auditing: 0
 Administrative : 0
 Advertising : 0
 Analyst : 0
 Art/Creative: 0
 Business Development: 0
 Consulting: 0
 Customer Service: 0
 Distribution Design: 0
 Education: 0
 Engineering: 0
 Finance: 0
 General Business: 0
 Health Care Provider: 0
 Human Resources: 0
 Information Technology: 0
 Legal: 0
 Management: 0
 Manufacturing: 0
 Marketing: 0
 Public Relations: 0
 Purchasing: 0
 Product Management: 0
 Project Management: 0
 Production: 0
 Quality Assurance: 0
 Research: 0
 Sales: 0
 Science: 0
 Strategy/Planning: 0
 Supply Chain: 0
 Training: 0
 Writing/Editing: 0
 #python: 0
 #selenium: 0
 # default to put for any industry/skill that you did not list
 default: 0

Input your personal info. Include the state/province in the city name to not get the wrong city when choosing from a dropdown. The phone country code needs to be exact for the one that is on linkedin. The website is interchangeable for github/portfolio/website.

# ------------ Additional parameters: personal info ---------------
personalInfo:
 First Name: FirstName
 Last Name: LastName
 Phone Country Code: Canada (+1) # See linkedin for your country code, must be exact according to the international platform, i.e. Italy (+39) not Italia (+39)
 Mobile Phone Number: 1234567890
 Street address: 123 Fake Street
 City: Red Deer, Alberta # Include the state/province as well!
 State: YourState
 Zip: YourZip/Postal
 Linkedin: https://www.linkedin.com/in/my-linkedin-profile
 Website: https://www.my-website.com # github/website is interchangeable here

This is unused at the moment. For the EEO the bot will try to decline to answer for everything.

# ------------ Additional parameters: USA employment crap ---------------
eeo:
 gender: None
 race: None
 vetran: None
 disability: None
 citizenship: yes
 clearance: no

Troubleshooting

If you are receiving 'file or directory' found errors, create a blank file with the specified name. For example:

touch unprepared_questions.csv

easyapplybot's People

Contributors

madingess avatar nathanduma avatar logix727 avatar voidbydefault avatar

Stargazers

 avatar  avatar

Forkers

jorgefrias

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.