Automate your job application process on Dice.com using Selenium WebDriver. Simplify and streamline your job search with one-click applications, intelligent filtering, and smart handling of applied jobs.
- Introduction
- Features
- Installation
- Configuration
- Usage
- Troubleshooting
- Contributors
- License
- Disclaimer
The Dice Job Application Automation tool is designed to make the job application process on Dice.com more efficient and less time-consuming. By automating repetitive tasks, it allows job seekers to focus on interview preparation and skill-building rather than filling out forms repeatedly. Built with Python and Selenium, this tool includes features such as automatic job searching, one-click application, and shadow DOM handling.
- ✅ Automated Login to Dice.com
- 🔍 Customizable Job Search: Allows searching with specific keywords and filters
- 🎯 Intelligent Filtering: Only applies to relevant jobs (e.g., today's job postings, non-third-party listings)
- ⚡ "Easy Apply" Automation: One-click application submission for jobs with Easy Apply
- 🔄 Smart Handling of Previously Applied Jobs: Skips jobs that you've already applied to
- 💡 Shadow DOM Interaction: Interacts with modern web elements, including those hidden in Shadow DOM
- 📊 Detailed Logging: Keeps a log of the application process for easy tracking
dice-job-automation/
├── README.md
├── requirements.txt
├── config.py
├── main.py
└── src/
├── __init__.py
├── automation.py
├── handlers/
│ ├── __init__.py
│ ├── job_handler.py
│ ├── shadow_dom_handler.py
│ └── search_filter_handler.py
└── utils/
├── __init__.py
└── webdriver_setup.py
- Python 3.x
- Chrome Browser
- ChromeDriver matching your Chrome version
- Required Python packages listed in
requirements.txt
-
Clone the Repository
git clone https://github.com/Deeraj7/dice-job-automation.git cd dice-job-automation
-
Install Required Packages
pip install -r requirements.txt
-
Configure Credentials Create a
config.py
file with your Dice.com credentials, search settings, and resume path:CREDENTIALS = { "username": "your_email@example.com", "password": "your_password" } SEARCH_SETTINGS = { "keyword": "Data Engineer", "max_applications": 10 } RESUME_SETTINGS = { "path": "/path/to/your/resume.pdf" # Full path to your resume file }
- Update
config.py
with your Dice.com credentials and search preferences. - Run the script:
python main.py
In config.py
, you can customize:
- Login Credentials: Username and password for Dice.com.
- Search Keywords: The keyword(s) to search for relevant job postings.
- Max Applications: Maximum number of applications per run.
- Resume Path: Specify the path to your resume file, which will be used in applications.
- Other Search Filters: You can add filters based on other criteria to further refine job search.
-
Login Issues
- Double-check your credentials in
config.py
. - Ensure your ChromeDriver version matches your installed Chrome browser version.
- Double-check your credentials in
-
Application Process Stalls
- If the bot fails to click "Easy Apply," ensure that the jobs being targeted have the Easy Apply option.
-
Shadow DOM Errors
- Ensure the
shadow_dom_handler.py
script is functioning correctly. Some web elements on Dice might require specific handling.
- Ensure the
-
Rate Limiting on Dice
- Dice.com might limit requests if too many actions are performed quickly. The script includes delays to mimic human behavior, but further customization may be needed.
This project is licensed under the MIT License - see the MIT License file for details.
This tool is for educational purposes only. Use responsibly and in accordance with Dice.com's terms of service.