The Job Search Platform is a lightweight, AI-powered application built using Streamlit that simplifies job hunting by analyzing uploaded resumes and displaying relevant job postings from multiple sources. This project fetches job data directly using web scraping and text processing scripts.
- Resume Upload: Users can upload their resumes in PDF format.
- Resume Parsing: Extracts key information such as skills, education, and experience using NLP techniques.
- Job Matching: Fetches job postings from popular platforms (e.g., Indeed, Naukri) based on the user's profile.
- Job Listings Display: Displays relevant job postings in a user-friendly Streamlit interface.
- Frontend: Streamlit
- Job Data Scraping: Python scripts (e.g.,
scrap.py
) - File Processing: Python script for PDF parsing (e.g.,
pdf.py
)
-
Clone the repository:
git clone https://github.com/snehaapratap/Job-Search.git cd Job-Search
-
Run the Streamlit app:
streamlit run app.py
-
Ensure any necessary API keys or credentials are configured in a
.env
file or directly in the scripts.
- Open the Streamlit app in your browser.
- Upload your resume in PDF format.
- Wait for the system to analyze your resume.
- View tailored job postings scraped from various job boards.
job-search-platform/
│
├── .venv/ # Virtual environment files
├── .gitattributes # Git attributes
├── .gitignore # Ignored files
├── app.py # Main Streamlit application
├── pdf.py # Script for processing PDF resumes
├── scrap.py # Script for scraping job postings
├── foundit_job_cards.txt # Sample job data from Foundit
├── indeed_job_cards.txt # Sample job data from Indeed
├── naukri_job_cards.txt # Sample job data from Naukri
├── jooble_job_cards.txt # Sample job data from Jooble
├── job_analysis_results.txt # Processed analysis results
- Add user authentication and session management.
- Integrate more job boards for a wider range of postings.
- Enhance the NLP model for better resume parsing and job matching.
- Add a database to store user preferences and session data.