Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

29 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

BlueHunt

Automated Cybersecurity Job Acquisition Pipeline

Automating cybersecurity job discovery through intelligent multi-platform aggregation, filtering, scoring, and real-time notifications.

Python Playwright Telegram Status License

๐Ÿ“Œ Problem Statement

As a cybersecurity fresher, I experienced the challenge of identifying relevant opportunities despite having the required technical skills. Cybersecurity jobs are distributed across multiple platforms, and manually searching, filtering, and tracking suitable opportunities consumes a significant amount of time every day. To solve this problem, I built BlueHunt, an automated cybersecurity job acquisition pipeline that aggregates job postings from multiple platforms and filters them based on cybersecurity skills, experience requirements, role seniority, and location preferences. Although BlueHunt currently supports a small number of carefully selected sources, these platforms collectively cover the majority of entry-level cybersecurity opportunities relevant to my target roles.

Challenges include:

  • Duplicate job postings across multiple platforms.
  • Large numbers of irrelevant or senior-level positions.
  • Missing newly posted opportunities.
  • Manual tracking of applied jobs.
  • Time wasted switching between multiple job platforms.

BlueHunt automates this entire process.

Workflow

  1. Fetch jobs from supported platforms.
  2. Extract structured job information.
  3. Filter irrelevant and senior-level roles.
  4. Score jobs based on skill relevance.
  5. Remove duplicate entries.
  6. Store unique jobs in Excel.
  7. Send Telegram notifications for high-quality matches.

โšกFeatures

  • โœ… Multi-platform cybersecurity job scraping
  • โœ… SOC and Cybersecurity focused scoring engine
  • โœ… Fresher-friendly job prioritization
  • โœ… Senior role filtering
  • โœ… Environment variable based secret management
  • โœ… Duplicate job detection
  • โœ… Telegram notifications for strong matches
  • โœ… Persistent job database using Excel
  • โœ… Automated scheduling using Windows Task Scheduler
  • โœ… Experience-aware ranking engine
  • โœ… Location-aware filtering for Indian cybersecurity roles

๐Ÿ“Š Project Highlights

  • ๐Ÿ” Aggregates jobs from 4 platforms
  • ๐ŸŽฏ Uses 20+ cybersecurity search keywords
  • ๐Ÿ“ˆ Prioritizes entry-level SOC and Cybersecurity roles
  • ๐Ÿšซ Automatically filters senior positions
  • ๐Ÿ” Eliminates duplicate postings
  • ๐Ÿ“ฌ Sends Telegram alerts for high-quality matches
  • โฐ Supports scheduled execution via Windows Task Scheduler

๐ŸŒ Supported Platforms

Currently supported:

  • LinkedIn
  • Naukri
  • Foundit
  • Internshala

๐Ÿ— Architecture

Architecture/Workflow


๐Ÿ›  Tech Stack

Category Technologies
Language Python
Browser Automation Playwright
Data Processing Pandas
Storage OpenPyXL
Notifications Telegram Bot API
Scheduling Windows Task Scheduler
Environment Management python-dotenv
Version Control Git, GitHub

โš™ Installation

Clone Repository

git clone https://github.com/jashuboy/BlueHunt.git
cd BlueHunt

Install Dependencies

pip install -r requirements.txt

Install Playwright Browsers

playwright install

Configure Environment Variables

Create a .env file:

BOT_TOKEN=YOUR_TELEGRAM_BOT_TOKEN
CHAT_ID=YOUR_TELEGRAM_CHAT_ID

โ–ถ Usage

Run manually:

python main.py

Or configure:

Windows Task Scheduler

to automate scans at scheduled intervals.


๐Ÿ“ท Assets

Telegram Alert

Telegram Alert

Job Database

Excel Database

Target Roles

Target Roles

Skills and Experience

Skills and Experience

Locations

Locations

Negative Weights

Negative Weights

Experience Penalties

Experience Penalties

Blocked Terms

Blocked Terms


๐Ÿ“‚ Project Structure

BlueHunt/
โ”‚
โ”œโ”€โ”€ assets/
โ”‚   โ”œโ”€โ”€ architecture_workflow.png
โ”‚   โ”œโ”€โ”€ banner.png
โ”‚   โ”œโ”€โ”€ blocked_terms.png
โ”‚   โ”œโ”€โ”€ excel_database.png
โ”‚   โ”œโ”€โ”€ experience_penalties.png
โ”‚   โ”œโ”€โ”€ locations.png
โ”‚   โ”œโ”€โ”€ negative_weights.png
โ”‚   โ”œโ”€โ”€ skills.png
โ”‚   โ”œโ”€โ”€ target_roles.png
โ”‚   โ””โ”€โ”€ telegram_alert.png
โ”‚
โ”œโ”€โ”€ core/
โ”‚   โ”œโ”€โ”€ filtering.py          # Rule-based filtering engine
โ”‚   โ”œโ”€โ”€ scheduler.py          # Scheduled execution utilities
โ”‚   โ”œโ”€โ”€ scoring.py            # Rule-based scoring engine
โ”‚   โ”œโ”€โ”€ storage.py            # Excel database management
โ”‚   โ””โ”€โ”€ telegram_bot.py       # Telegram notification service
โ”‚
โ”œโ”€โ”€ data/
โ”‚   โ””โ”€โ”€ jobs_database.xlsx    # Stores unique job postings
โ”‚
โ”œโ”€โ”€ fetchers/
โ”‚   โ”œโ”€โ”€ foundit.py
โ”‚   โ”œโ”€โ”€ internshala.py
โ”‚   โ”œโ”€โ”€ linkedin.py
โ”‚   โ””โ”€โ”€ naukri.py
โ”‚
โ”œโ”€โ”€ .env                      # Environment variables
โ”œโ”€โ”€ .gitattributes
โ”œโ”€โ”€ .gitignore
โ”œโ”€โ”€ config.py                 # Project configuration
โ”œโ”€โ”€ LICENSE
โ”œโ”€โ”€ main.py                   # BlueHunt pipeline entry point
โ”œโ”€โ”€ README.md
โ”œโ”€โ”€ requirements.txt
โ””โ”€โ”€ run_bluehunt.bat          # Windows launcher

๐Ÿ”ฎ Future Improvements

  • AI-powered Resume Match Engine
  • AI-based resume tailoring
  • Company whitelist and blacklist
  • Daily job digest notifications
  • Application tracking dashboard
  • Interview preparation recommendations

๐Ÿ‘จโ€๐Ÿ’ป Author

Jashwanth Dola


โญ Support

If you found this project useful, consider giving it a star.

About

An Automated Job Acquisition Pipeline built with Python, Playwright, and Telegram Bot API.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages