Skip to content

Python / Automation – Automates job scraping by keyword and location, filters duplicates, and emails listings daily. Python scripting, web scraping, scheduling, and data pipeline development.

Notifications You must be signed in to change notification settings

ManibalaSinha/job-scraper-notifier

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Job Scraper Notifier

A Python-based automation tool that scrapes job listings from selected job boards (like Indeed, LinkedIn, or others) based on user-defined keywords and locations, and notifies users via email.

Master JSON API Parsing and Website Scraping with Python Automation https://youtu.be/WF4LtDWpye8

Features

  • Scrape jobs by keyword and location
  • Filter by posting date (e.g., "last 24 hours")
  • Email job listings directly to your inbox
  • Avoids duplicates by saving job IDs
  • Can be scheduled to run daily via cron or Task Scheduler

Requirements

  • Python 3.8+
  • requests
  • beautifulsoup4
  • smtplib or yagmail for email notifications
  • dotenv for managing secrets (optional but recommended)

Install dependencies:

pip install -r requirements.txt

Setup

  1. Clone the repo

    git clone https://github.com/yourusername/job-scraper-notifier.git
    cd job-scraper-notifier
  2. Create .env file (or edit config in config.py)

    [email protected]
    EMAIL_PASSWORD=yourpassword
    [email protected]
    JOB_KEYWORDS=frontend developer,react
    JOB_LOCATION=Toronto, ON
    
  3. Run the script

    python job-scraper.py

Example Output

The email includes:

  • Job Title
  • Company
  • Location
  • Summary
  • Direct Link

Sample Email Format

 New Job Alert: Frontend Developer - Shopify

Location: Toronto, ON  
Company: Shopify  
https://www.indeed.ca/viewjob?jk=abc123

Job Summary:
We are looking for a frontend developer with experience in React...

---

Automation

To run daily:

On Windows:

Use Task Scheduler to run:

python C:\path\to\job-scraper.py

On macOS/Linux:

Add a cron job:

0 9 * * * /usr/bin/python3 /path/to/job-scraper.py

TODO

  • Add support for more job boards (LinkedIn, Workopolis, Glassdoor)
  • Add Slack/Telegram notifications
  • Add UI dashboard for configuring preferences

Author

Manibala Sinha LinkedInPortfolio


License

MIT License

About

Python / Automation – Automates job scraping by keyword and location, filters duplicates, and emails listings daily. Python scripting, web scraping, scheduling, and data pipeline development.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages