{ "cells": [ { "cell_type": "markdown", "id": "c3d7cc88", "metadata": {}, "source": [ "# Resume Analyzer" ] }, { "cell_type": "markdown", "id": "9459843e", "metadata": {}, "source": [ "### Install Dependencies" ] }, { "cell_type": "code", "execution_count": 1, "id": "9a1fa2ec", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Defaulting to user installation because normal site-packages is not writeable\n", "Requirement already satisfied: scikit-learn in c:\\program files\\python311\\lib\\site-packages (1.5.0)\n", "Requirement already satisfied: numpy>=1.19.5 in c:\\program files\\python311\\lib\\site-packages (from scikit-learn) (1.26.4)\n", "Requirement already satisfied: scipy>=1.6.0 in c:\\program files\\python311\\lib\\site-packages (from scikit-learn) (1.11.3)\n", "Requirement already satisfied: joblib>=1.2.0 in c:\\program files\\python311\\lib\\site-packages (from scikit-learn) (1.3.2)\n", "Requirement already satisfied: threadpoolctl>=3.1.0 in c:\\program files\\python311\\lib\\site-packages (from scikit-learn) (3.5.0)\n" ] }, { "name": "stderr", "output_type": "stream", "text": [ "\n", "[notice] A new release of pip is available: 25.0.1 -> 25.1.1\n", "[notice] To update, run: python.exe -m pip install --upgrade pip\n" ] } ], "source": [ "# Scikit-learn (for ML models)\n", "!pip install scikit-learn" ] }, { "cell_type": "code", "execution_count": 2, "id": "f759f287", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Defaulting to user installation because normal site-packages is not writeable\n", "Requirement already satisfied: spacy in c:\\program files\\python311\\lib\\site-packages (3.7.2)\n", "Requirement already satisfied: spacy-legacy<3.1.0,>=3.0.11 in c:\\program files\\python311\\lib\\site-packages (from spacy) (3.0.12)\n", "Requirement already satisfied: spacy-loggers<2.0.0,>=1.0.0 in c:\\program files\\python311\\lib\\site-packages (from spacy) (1.0.5)\n", "Requirement already satisfied: murmurhash<1.1.0,>=0.28.0 in c:\\program files\\python311\\lib\\site-packages (from spacy) (1.0.10)\n", "Requirement already satisfied: cymem<2.1.0,>=2.0.2 in c:\\program files\\python311\\lib\\site-packages (from spacy) (2.0.8)\n", "Requirement already satisfied: preshed<3.1.0,>=3.0.2 in c:\\program files\\python311\\lib\\site-packages (from spacy) (3.0.9)\n", "Requirement already satisfied: thinc<8.3.0,>=8.1.8 in c:\\program files\\python311\\lib\\site-packages (from spacy) (8.2.1)\n", "Requirement already satisfied: wasabi<1.2.0,>=0.9.1 in c:\\program files\\python311\\lib\\site-packages (from spacy) (1.1.2)\n", "Requirement already satisfied: srsly<3.0.0,>=2.4.3 in c:\\program files\\python311\\lib\\site-packages (from spacy) (2.4.8)\n", "Requirement already satisfied: catalogue<2.1.0,>=2.0.6 in c:\\program files\\python311\\lib\\site-packages (from spacy) (2.0.10)\n", "Requirement already satisfied: weasel<0.4.0,>=0.1.0 in c:\\program files\\python311\\lib\\site-packages (from spacy) (0.3.3)\n", "Requirement already satisfied: typer<0.10.0,>=0.3.0 in c:\\program files\\python311\\lib\\site-packages (from spacy) (0.9.0)\n", "Requirement already satisfied: smart-open<7.0.0,>=5.2.1 in c:\\program files\\python311\\lib\\site-packages (from spacy) (6.4.0)\n", "Requirement already satisfied: tqdm<5.0.0,>=4.38.0 in c:\\program files\\python311\\lib\\site-packages (from spacy) (4.67.1)\n", "Requirement already satisfied: requests<3.0.0,>=2.13.0 in c:\\program files\\python311\\lib\\site-packages (from spacy) (2.32.3)\n", "Requirement already satisfied: pydantic!=1.8,!=1.8.1,<3.0.0,>=1.7.4 in c:\\program files\\python311\\lib\\site-packages (from spacy) (2.4.2)\n", "Requirement already satisfied: jinja2 in c:\\program files\\python311\\lib\\site-packages (from spacy) (3.1.2)\n", "Requirement already satisfied: setuptools in c:\\program files\\python311\\lib\\site-packages (from spacy) (65.5.0)\n", "Requirement already satisfied: packaging>=20.0 in c:\\program files\\python311\\lib\\site-packages (from spacy) (24.0)\n", "Requirement already satisfied: langcodes<4.0.0,>=3.2.0 in c:\\program files\\python311\\lib\\site-packages (from spacy) (3.3.0)\n", "Requirement already satisfied: numpy>=1.19.0 in c:\\program files\\python311\\lib\\site-packages (from spacy) (1.26.4)\n", "Requirement already satisfied: annotated-types>=0.4.0 in c:\\program files\\python311\\lib\\site-packages (from pydantic!=1.8,!=1.8.1,<3.0.0,>=1.7.4->spacy) (0.6.0)\n", "Requirement already satisfied: pydantic-core==2.10.1 in c:\\program files\\python311\\lib\\site-packages (from pydantic!=1.8,!=1.8.1,<3.0.0,>=1.7.4->spacy) (2.10.1)\n", "Requirement already satisfied: typing-extensions>=4.6.1 in c:\\program files\\python311\\lib\\site-packages (from pydantic!=1.8,!=1.8.1,<3.0.0,>=1.7.4->spacy) (4.12.1)\n", "Requirement already satisfied: charset-normalizer<4,>=2 in c:\\users\\koppo\\appdata\\roaming\\python\\python311\\site-packages (from requests<3.0.0,>=2.13.0->spacy) (3.2.0)\n", "Requirement already satisfied: idna<4,>=2.5 in c:\\users\\koppo\\appdata\\roaming\\python\\python311\\site-packages (from requests<3.0.0,>=2.13.0->spacy) (3.4)\n", "Requirement already satisfied: urllib3<3,>=1.21.1 in c:\\users\\koppo\\appdata\\roaming\\python\\python311\\site-packages (from requests<3.0.0,>=2.13.0->spacy) (1.26.16)\n", "Requirement already satisfied: certifi>=2017.4.17 in c:\\users\\koppo\\appdata\\roaming\\python\\python311\\site-packages (from requests<3.0.0,>=2.13.0->spacy) (2023.7.22)\n", "Requirement already satisfied: blis<0.8.0,>=0.7.8 in c:\\program files\\python311\\lib\\site-packages (from thinc<8.3.0,>=8.1.8->spacy) (0.7.11)\n", "Requirement already satisfied: confection<1.0.0,>=0.0.1 in c:\\program files\\python311\\lib\\site-packages (from thinc<8.3.0,>=8.1.8->spacy) (0.1.3)\n", "Requirement already satisfied: colorama in c:\\program files\\python311\\lib\\site-packages (from tqdm<5.0.0,>=4.38.0->spacy) (0.4.6)\n", "Requirement already satisfied: click<9.0.0,>=7.1.1 in c:\\program files\\python311\\lib\\site-packages (from typer<0.10.0,>=0.3.0->spacy) (8.1.7)\n", "Requirement already satisfied: cloudpathlib<0.17.0,>=0.7.0 in c:\\program files\\python311\\lib\\site-packages (from weasel<0.4.0,>=0.1.0->spacy) (0.16.0)\n", "Requirement already satisfied: MarkupSafe>=2.0 in c:\\users\\koppo\\appdata\\roaming\\python\\python311\\site-packages (from jinja2->spacy) (2.1.3)\n" ] }, { "name": "stderr", "output_type": "stream", "text": [ "\n", "[notice] A new release of pip is available: 25.0.1 -> 25.1.1\n", "[notice] To update, run: python.exe -m pip install --upgrade pip\n" ] }, { "name": "stdout", "output_type": "stream", "text": [ "Defaulting to user installation because normal site-packages is not writeable\n", "Collecting en-core-web-sm==3.7.1\n" ] }, { "name": "stderr", "output_type": "stream", "text": [ "C:\\Users\\koppo\\AppData\\Roaming\\Python\\Python311\\site-packages\\torch\\utils\\_pytree.py:185: FutureWarning: optree is installed but the version is too old to support PyTorch Dynamo in C++ pytree. C++ pytree support is disabled. Please consider upgrading optree using `python3 -m pip install --upgrade 'optree>=0.13.0'`.\n", " warnings.warn(\n", " WARNING: Retrying (Retry(total=4, connect=None, read=None, redirect=None, status=None)) after connection broken by 'ProtocolError('Connection aborted.', ConnectionAbortedError(10053, 'An established connection was aborted by the software in your host machine', None, 10053, None))': /explosion/spacy-models/releases/download/en_core_web_sm-3.7.1/en_core_web_sm-3.7.1-py3-none-any.whl\n", " WARNING: Retrying (Retry(total=3, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError(': Failed to establish a new connection: [WinError 10051] A socket operation was attempted to an unreachable network')': /explosion/spacy-models/releases/download/en_core_web_sm-3.7.1/en_core_web_sm-3.7.1-py3-none-any.whl\n", " WARNING: Retrying (Retry(total=2, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError(': Failed to establish a new connection: [WinError 10051] A socket operation was attempted to an unreachable network')': /explosion/spacy-models/releases/download/en_core_web_sm-3.7.1/en_core_web_sm-3.7.1-py3-none-any.whl\n", " WARNING: Retrying (Retry(total=1, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError(': Failed to establish a new connection: [Errno 11001] getaddrinfo failed')': /explosion/spacy-models/releases/download/en_core_web_sm-3.7.1/en_core_web_sm-3.7.1-py3-none-any.whl\n", " WARNING: Retrying (Retry(total=0, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError(': Failed to establish a new connection: [Errno 11001] getaddrinfo failed')': /explosion/spacy-models/releases/download/en_core_web_sm-3.7.1/en_core_web_sm-3.7.1-py3-none-any.whl\n", "ERROR: Could not install packages due to an OSError: HTTPSConnectionPool(host='github.com', port=443): Max retries exceeded with url: /explosion/spacy-models/releases/download/en_core_web_sm-3.7.1/en_core_web_sm-3.7.1-py3-none-any.whl (Caused by NewConnectionError(': Failed to establish a new connection: [Errno 11001] getaddrinfo failed'))\n", "\n", "\n", "[notice] A new release of pip is available: 25.0.1 -> 25.1.1\n", "[notice] To update, run: python.exe -m pip install --upgrade pip\n" ] } ], "source": [ "# SpaCy (for NLP)\n", "!pip install spacy\n", "!python -m spacy download en_core_web_sm\n" ] }, { "cell_type": "code", "execution_count": 3, "id": "e8b9c94d", "metadata": {}, "outputs": [ { "name": "stderr", "output_type": "stream", "text": [ "\n", "[notice] A new release of pip is available: 25.0.1 -> 25.1.1\n", "[notice] To update, run: python.exe -m pip install --upgrade pip\n" ] }, { "name": "stdout", "output_type": "stream", "text": [ "Defaulting to user installation because normal site-packages is not writeable\n", "Requirement already satisfied: nltk in c:\\program files\\python311\\lib\\site-packages (3.8.1)\n", "Requirement already satisfied: click in c:\\program files\\python311\\lib\\site-packages (from nltk) (8.1.7)\n", "Requirement already satisfied: joblib in c:\\program files\\python311\\lib\\site-packages (from nltk) (1.3.2)\n", "Requirement already satisfied: regex>=2021.8.3 in c:\\program files\\python311\\lib\\site-packages (from nltk) (2023.10.3)\n", "Requirement already satisfied: tqdm in c:\\program files\\python311\\lib\\site-packages (from nltk) (4.67.1)\n", "Requirement already satisfied: colorama in c:\\program files\\python311\\lib\\site-packages (from click->nltk) (0.4.6)\n" ] }, { "name": "stderr", "output_type": "stream", "text": [ "[nltk_data] Error loading punkt: \n", "[nltk_data] Error loading stopwords: \n" ] }, { "data": { "text/plain": [ "False" ] }, "execution_count": 3, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# NLTK (for NLP preprocessing)\n", "!pip install nltk\n", "import nltk\n", "nltk.download('punkt')\n", "nltk.download('stopwords')\n" ] }, { "cell_type": "code", "execution_count": 4, "id": "a6a1a611", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Defaulting to user installation because normal site-packages is not writeable\n", "Requirement already satisfied: pdfminer.six in c:\\users\\koppo\\appdata\\roaming\\python\\python311\\site-packages (20250506)\n", "Requirement already satisfied: charset-normalizer>=2.0.0 in c:\\users\\koppo\\appdata\\roaming\\python\\python311\\site-packages (from pdfminer.six) (3.2.0)\n", "Requirement already satisfied: cryptography>=36.0.0 in c:\\users\\koppo\\appdata\\roaming\\python\\python311\\site-packages (from pdfminer.six) (44.0.2)\n", "Requirement already satisfied: cffi>=1.12 in c:\\users\\koppo\\appdata\\roaming\\python\\python311\\site-packages (from cryptography>=36.0.0->pdfminer.six) (1.15.1)\n", "Requirement already satisfied: pycparser in c:\\users\\koppo\\appdata\\roaming\\python\\python311\\site-packages (from cffi>=1.12->cryptography>=36.0.0->pdfminer.six) (2.21)\n" ] }, { "name": "stderr", "output_type": "stream", "text": [ "\n", "[notice] A new release of pip is available: 25.0.1 -> 25.1.1\n", "[notice] To update, run: python.exe -m pip install --upgrade pip\n" ] } ], "source": [ "# PDFMiner (to extract text from PDF resumes)\n", "!pip install pdfminer.six" ] }, { "cell_type": "code", "execution_count": 5, "id": "04d566f0", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Defaulting to user installation because normal site-packages is not writeable\n", "Requirement already satisfied: xgboost in c:\\users\\koppo\\appdata\\roaming\\python\\python311\\site-packages (3.0.0)\n", "Requirement already satisfied: numpy in c:\\program files\\python311\\lib\\site-packages (from xgboost) (1.26.4)\n", "Requirement already satisfied: scipy in c:\\program files\\python311\\lib\\site-packages (from xgboost) (1.11.3)\n" ] }, { "name": "stderr", "output_type": "stream", "text": [ "\n", "[notice] A new release of pip is available: 25.0.1 -> 25.1.1\n", "[notice] To update, run: python.exe -m pip install --upgrade pip\n" ] } ], "source": [ "# XGBoost (for boosted tree models)\n", "!pip install xgboost" ] }, { "cell_type": "code", "execution_count": 6, "id": "b152893d", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Defaulting to user installation because normal site-packages is not writeable\n", "Requirement already satisfied: matplotlib in c:\\users\\koppo\\appdata\\roaming\\python\\python311\\site-packages (3.7.2)\n", "Requirement already satisfied: contourpy>=1.0.1 in c:\\users\\koppo\\appdata\\roaming\\python\\python311\\site-packages (from matplotlib) (1.1.0)\n", "Requirement already satisfied: cycler>=0.10 in c:\\users\\koppo\\appdata\\roaming\\python\\python311\\site-packages (from matplotlib) (0.11.0)\n", "Requirement already satisfied: fonttools>=4.22.0 in c:\\users\\koppo\\appdata\\roaming\\python\\python311\\site-packages (from matplotlib) (4.42.1)\n", "Requirement already satisfied: kiwisolver>=1.0.1 in c:\\users\\koppo\\appdata\\roaming\\python\\python311\\site-packages (from matplotlib) (1.4.5)\n", "Requirement already satisfied: numpy>=1.20 in c:\\program files\\python311\\lib\\site-packages (from matplotlib) (1.26.4)\n", "Requirement already satisfied: packaging>=20.0 in c:\\program files\\python311\\lib\\site-packages (from matplotlib) (24.0)\n", "Requirement already satisfied: pillow>=6.2.0 in c:\\users\\koppo\\appdata\\roaming\\python\\python311\\site-packages (from matplotlib) (10.0.0)\n", "Requirement already satisfied: pyparsing<3.1,>=2.3.1 in c:\\users\\koppo\\appdata\\roaming\\python\\python311\\site-packages (from matplotlib) (3.0.9)\n", "Requirement already satisfied: python-dateutil>=2.7 in c:\\users\\koppo\\appdata\\roaming\\python\\python311\\site-packages (from matplotlib) (2.8.2)\n", "Requirement already satisfied: six>=1.5 in c:\\users\\koppo\\appdata\\roaming\\python\\python311\\site-packages (from python-dateutil>=2.7->matplotlib) (1.16.0)\n" ] }, { "name": "stderr", "output_type": "stream", "text": [ "\n", "[notice] A new release of pip is available: 25.0.1 -> 25.1.1\n", "[notice] To update, run: python.exe -m pip install --upgrade pip\n" ] } ], "source": [ "# Matplotlib (for plotting)\n", "!pip install matplotlib" ] }, { "cell_type": "code", "execution_count": 7, "id": "2d21e571", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Defaulting to user installation because normal site-packages is not writeable\n", "Requirement already satisfied: seaborn in c:\\users\\koppo\\appdata\\roaming\\python\\python311\\site-packages (0.13.2)\n", "Requirement already satisfied: numpy!=1.24.0,>=1.20 in c:\\program files\\python311\\lib\\site-packages (from seaborn) (1.26.4)\n", "Requirement already satisfied: pandas>=1.2 in c:\\program files\\python311\\lib\\site-packages (from seaborn) (2.2.2)\n", "Requirement already satisfied: matplotlib!=3.6.1,>=3.4 in c:\\users\\koppo\\appdata\\roaming\\python\\python311\\site-packages (from seaborn) (3.7.2)\n", "Requirement already satisfied: contourpy>=1.0.1 in c:\\users\\koppo\\appdata\\roaming\\python\\python311\\site-packages (from matplotlib!=3.6.1,>=3.4->seaborn) (1.1.0)\n", "Requirement already satisfied: cycler>=0.10 in c:\\users\\koppo\\appdata\\roaming\\python\\python311\\site-packages (from matplotlib!=3.6.1,>=3.4->seaborn) (0.11.0)\n", "Requirement already satisfied: fonttools>=4.22.0 in c:\\users\\koppo\\appdata\\roaming\\python\\python311\\site-packages (from matplotlib!=3.6.1,>=3.4->seaborn) (4.42.1)\n", "Requirement already satisfied: kiwisolver>=1.0.1 in c:\\users\\koppo\\appdata\\roaming\\python\\python311\\site-packages (from matplotlib!=3.6.1,>=3.4->seaborn) (1.4.5)\n", "Requirement already satisfied: packaging>=20.0 in c:\\program files\\python311\\lib\\site-packages (from matplotlib!=3.6.1,>=3.4->seaborn) (24.0)\n", "Requirement already satisfied: pillow>=6.2.0 in c:\\users\\koppo\\appdata\\roaming\\python\\python311\\site-packages (from matplotlib!=3.6.1,>=3.4->seaborn) (10.0.0)\n", "Requirement already satisfied: pyparsing<3.1,>=2.3.1 in c:\\users\\koppo\\appdata\\roaming\\python\\python311\\site-packages (from matplotlib!=3.6.1,>=3.4->seaborn) (3.0.9)\n", "Requirement already satisfied: python-dateutil>=2.7 in c:\\users\\koppo\\appdata\\roaming\\python\\python311\\site-packages (from matplotlib!=3.6.1,>=3.4->seaborn) (2.8.2)\n", "Requirement already satisfied: pytz>=2020.1 in c:\\program files\\python311\\lib\\site-packages (from pandas>=1.2->seaborn) (2024.1)\n", "Requirement already satisfied: tzdata>=2022.7 in c:\\program files\\python311\\lib\\site-packages (from pandas>=1.2->seaborn) (2024.1)\n", "Requirement already satisfied: six>=1.5 in c:\\users\\koppo\\appdata\\roaming\\python\\python311\\site-packages (from python-dateutil>=2.7->matplotlib!=3.6.1,>=3.4->seaborn) (1.16.0)\n" ] }, { "name": "stderr", "output_type": "stream", "text": [ "\n", "[notice] A new release of pip is available: 25.0.1 -> 25.1.1\n", "[notice] To update, run: python.exe -m pip install --upgrade pip\n" ] } ], "source": [ "# Seaborn (for visual analytics)\n", "!pip install seaborn" ] }, { "cell_type": "code", "execution_count": 8, "id": "98ca75e6", "metadata": {}, "outputs": [ { "name": "stderr", "output_type": "stream", "text": [ "\n", "[notice] A new release of pip is available: 25.0.1 -> 25.1.1\n", "[notice] To update, run: python.exe -m pip install --upgrade pip\n" ] }, { "name": "stdout", "output_type": "stream", "text": [ "Defaulting to user installation because normal site-packages is not writeable\n", "Requirement already satisfied: python-docx in c:\\users\\koppo\\appdata\\roaming\\python\\python311\\site-packages (1.1.2)\n", "Requirement already satisfied: lxml>=3.1.0 in c:\\users\\koppo\\appdata\\roaming\\python\\python311\\site-packages (from python-docx) (5.4.0)\n", "Requirement already satisfied: typing-extensions>=4.9.0 in c:\\program files\\python311\\lib\\site-packages (from python-docx) (4.12.1)\n" ] } ], "source": [ "!pip install python-docx" ] }, { "cell_type": "code", "execution_count": 9, "id": "17364abc", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Defaulting to user installation because normal site-packages is not writeable\n", "Requirement already satisfied: pdfminer.six in c:\\users\\koppo\\appdata\\roaming\\python\\python311\\site-packages (20250506)\n", "Requirement already satisfied: charset-normalizer>=2.0.0 in c:\\users\\koppo\\appdata\\roaming\\python\\python311\\site-packages (from pdfminer.six) (3.2.0)\n", "Requirement already satisfied: cryptography>=36.0.0 in c:\\users\\koppo\\appdata\\roaming\\python\\python311\\site-packages (from pdfminer.six) (44.0.2)\n", "Requirement already satisfied: cffi>=1.12 in c:\\users\\koppo\\appdata\\roaming\\python\\python311\\site-packages (from cryptography>=36.0.0->pdfminer.six) (1.15.1)\n", "Requirement already satisfied: pycparser in c:\\users\\koppo\\appdata\\roaming\\python\\python311\\site-packages (from cffi>=1.12->cryptography>=36.0.0->pdfminer.six) (2.21)\n" ] }, { "name": "stderr", "output_type": "stream", "text": [ "\n", "[notice] A new release of pip is available: 25.0.1 -> 25.1.1\n", "[notice] To update, run: python.exe -m pip install --upgrade pip\n" ] }, { "name": "stdout", "output_type": "stream", "text": [ "Defaulting to user installation because normal site-packages is not writeable\n", "Requirement already satisfied: python-docx in c:\\users\\koppo\\appdata\\roaming\\python\\python311\\site-packages (1.1.2)\n", "Requirement already satisfied: lxml>=3.1.0 in c:\\users\\koppo\\appdata\\roaming\\python\\python311\\site-packages (from python-docx) (5.4.0)\n", "Requirement already satisfied: typing-extensions>=4.9.0 in c:\\program files\\python311\\lib\\site-packages (from python-docx) (4.12.1)\n" ] }, { "name": "stderr", "output_type": "stream", "text": [ "\n", "[notice] A new release of pip is available: 25.0.1 -> 25.1.1\n", "[notice] To update, run: python.exe -m pip install --upgrade pip\n" ] } ], "source": [ "!pip install pdfminer.six\n", "!pip install python-docx" ] }, { "cell_type": "code", "execution_count": 10, "id": "351c1057", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Defaulting to user installation because normal site-packages is not writeable\n", "Requirement already satisfied: ipywidgets in c:\\users\\koppo\\appdata\\roaming\\python\\python311\\site-packages (8.1.5)\n", "Requirement already satisfied: comm>=0.1.3 in c:\\users\\koppo\\appdata\\roaming\\python\\python311\\site-packages (from ipywidgets) (0.2.0)\n", "Requirement already satisfied: ipython>=6.1.0 in c:\\users\\koppo\\appdata\\roaming\\python\\python311\\site-packages (from ipywidgets) (8.17.2)\n", "Requirement already satisfied: traitlets>=4.3.1 in c:\\users\\koppo\\appdata\\roaming\\python\\python311\\site-packages (from ipywidgets) (5.13.0)\n", "Requirement already satisfied: widgetsnbextension~=4.0.12 in c:\\users\\koppo\\appdata\\roaming\\python\\python311\\site-packages (from ipywidgets) (4.0.13)\n", "Requirement already satisfied: jupyterlab-widgets~=3.0.12 in c:\\users\\koppo\\appdata\\roaming\\python\\python311\\site-packages (from ipywidgets) (3.0.13)\n", "Requirement already satisfied: decorator in c:\\users\\koppo\\appdata\\roaming\\python\\python311\\site-packages (from ipython>=6.1.0->ipywidgets) (5.1.1)\n", "Requirement already satisfied: jedi>=0.16 in c:\\users\\koppo\\appdata\\roaming\\python\\python311\\site-packages (from ipython>=6.1.0->ipywidgets) (0.19.1)\n", "Requirement already satisfied: matplotlib-inline in c:\\users\\koppo\\appdata\\roaming\\python\\python311\\site-packages (from ipython>=6.1.0->ipywidgets) (0.1.6)\n", "Requirement already satisfied: prompt-toolkit!=3.0.37,<3.1.0,>=3.0.30 in c:\\users\\koppo\\appdata\\roaming\\python\\python311\\site-packages (from ipython>=6.1.0->ipywidgets) (3.0.39)\n", "Requirement already satisfied: pygments>=2.4.0 in c:\\users\\koppo\\appdata\\roaming\\python\\python311\\site-packages (from ipython>=6.1.0->ipywidgets) (2.16.1)\n", "Requirement already satisfied: stack-data in c:\\users\\koppo\\appdata\\roaming\\python\\python311\\site-packages (from ipython>=6.1.0->ipywidgets) (0.6.3)\n", "Requirement already satisfied: colorama in c:\\program files\\python311\\lib\\site-packages (from ipython>=6.1.0->ipywidgets) (0.4.6)\n", "Requirement already satisfied: parso<0.9.0,>=0.8.3 in c:\\users\\koppo\\appdata\\roaming\\python\\python311\\site-packages (from jedi>=0.16->ipython>=6.1.0->ipywidgets) (0.8.3)\n", "Requirement already satisfied: wcwidth in c:\\users\\koppo\\appdata\\roaming\\python\\python311\\site-packages (from prompt-toolkit!=3.0.37,<3.1.0,>=3.0.30->ipython>=6.1.0->ipywidgets) (0.2.9)\n", "Requirement already satisfied: executing>=1.2.0 in c:\\users\\koppo\\appdata\\roaming\\python\\python311\\site-packages (from stack-data->ipython>=6.1.0->ipywidgets) (2.0.1)\n", "Requirement already satisfied: asttokens>=2.1.0 in c:\\users\\koppo\\appdata\\roaming\\python\\python311\\site-packages (from stack-data->ipython>=6.1.0->ipywidgets) (2.4.1)\n", "Requirement already satisfied: pure-eval in c:\\users\\koppo\\appdata\\roaming\\python\\python311\\site-packages (from stack-data->ipython>=6.1.0->ipywidgets) (0.2.2)\n", "Requirement already satisfied: six>=1.12.0 in c:\\users\\koppo\\appdata\\roaming\\python\\python311\\site-packages (from asttokens>=2.1.0->stack-data->ipython>=6.1.0->ipywidgets) (1.16.0)\n" ] }, { "name": "stderr", "output_type": "stream", "text": [ "\n", "[notice] A new release of pip is available: 25.0.1 -> 25.1.1\n", "[notice] To update, run: python.exe -m pip install --upgrade pip\n" ] } ], "source": [ "!pip install ipywidgets" ] }, { "cell_type": "code", "execution_count": 12, "id": "9b970a94", "metadata": {}, "outputs": [ { "name": "stderr", "output_type": "stream", "text": [ "usage: jupyter [-h] [--version] [--config-dir] [--data-dir] [--runtime-dir]\n", " [--paths] [--json] [--debug]\n", " [subcommand]\n", "\n", "Jupyter: Interactive Computing\n", "\n", "positional arguments:\n", " subcommand the subcommand to launch\n", "\n", "options:\n", " -h, --help show this help message and exit\n", " --version show the versions of core jupyter packages and exit\n", " --config-dir show Jupyter config dir\n", " --data-dir show Jupyter data dir\n", " --runtime-dir show Jupyter runtime dir\n", " --paths show all Jupyter paths. Add --json for machine-readable\n", " format.\n", " --json output paths as machine-readable json\n", " --debug output debug information about paths\n", "\n", "Available subcommands: dejavu events execute kernel kernelspec lab\n", "labextension labhub migrate nbconvert notebook run server troubleshoot trust\n", "\n", "Jupyter command `jupyter-nbextension` not found.\n" ] } ], "source": [ "!jupyter nbextension enable --py widgetsnbextension" ] }, { "cell_type": "code", "execution_count": 17, "id": "ebdb2ee4", "metadata": {}, "outputs": [], "source": [ "from IPython.display import display, HTML\n", "import html" ] }, { "cell_type": "markdown", "id": "ce436add", "metadata": {}, "source": [ "### Create Resume Upload & Text Extraction Section" ] }, { "cell_type": "code", "execution_count": 11, "id": "c501080f", "metadata": {}, "outputs": [], "source": [ "# import os\n", "# from tkinter import Tk\n", "# from tkinter.filedialog import askopenfilename\n", "# from pdfminer.high_level import extract_text\n", "# from docx import Document\n", "\n", "# def extract_text_from_pdf(file_path):\n", "# return extract_text(file_path)\n", "\n", "# def extract_text_from_docx(file_path):\n", "# doc = Document(file_path)\n", "# return '\\n'.join([p.text for p in doc.paragraphs])\n", "\n", "# def extract_resume_text_with_dialog():\n", "# Tk().withdraw() # Hide the root window\n", "# file_path = askopenfilename(title=\"Select a Resume File (.pdf or .docx)\",\n", "# filetypes=[(\"PDF files\", \"*.pdf\"), (\"Word files\", \"*.docx\")])\n", "\n", "# if not file_path:\n", "# print(\"❌ No file selected.\")\n", "# return None\n", "\n", "# if file_path.endswith(\".pdf\"):\n", "# text = extract_text_from_pdf(file_path)\n", "# elif file_path.endswith(\".docx\"):\n", "# text = extract_text_from_docx(file_path)\n", "# else:\n", "# print(\"❌ Unsupported file format.\")\n", "# return None\n", "\n", "# print(\"\\n✅ Resume text preview:\\n\")\n", "# print(text[:500])\n", "# return text\n", "\n", "# # Run the picker\n", "# resume_text = extract_resume_text_with_dialog()\n" ] }, { "cell_type": "code", "execution_count": 13, "id": "d9926991", "metadata": {}, "outputs": [ { "data": { "application/vnd.jupyter.widget-view+json": { "model_id": "962fe321bc774c7caa5142e801b751a4", "version_major": 2, "version_minor": 0 }, "text/plain": [ "HTML(value='Upload your resume (.pdf or .docx):')" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "application/vnd.jupyter.widget-view+json": { "model_id": "84ff72f66eb5407385f5514cb4a4d380", "version_major": 2, "version_minor": 0 }, "text/plain": [ "FileUpload(value=(), accept='.pdf,.docx', description='Upload')" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "import io\n", "import ipywidgets as widgets\n", "from IPython.display import display\n", "from pdfminer.high_level import extract_text_to_fp\n", "from docx import Document\n", "\n", "# Upload widget\n", "uploader = widgets.FileUpload(\n", " accept='.pdf,.docx', # Only accept PDFs and DOCX\n", " multiple=False\n", ")\n", "\n", "display(widgets.HTML(\"Upload your resume (.pdf or .docx):\"))\n", "display(uploader)" ] }, { "cell_type": "code", "execution_count": 15, "id": "12528f2e", "metadata": {}, "outputs": [], "source": [ "def extract_text_from_uploaded_file(uploader):\n", " if not uploader.value:\n", " print(\"⚠️ No file uploaded yet.\")\n", " return None\n", "\n", " # uploader.value is a tuple of dicts\n", " file_info = uploader.value[0]\n", " file_name = file_info['name']\n", " content = io.BytesIO(file_info['content'])\n", "\n", " if file_name.endswith('.pdf'):\n", " output = io.StringIO()\n", " extract_text_to_fp(content, output)\n", " return output.getvalue()\n", "\n", " elif file_name.endswith('.docx'):\n", " doc = Document(content)\n", " return '\\n'.join([p.text for p in doc.paragraphs])\n", "\n", " else:\n", " print(\"❌ Unsupported file type.\")\n", " return None\n" ] }, { "cell_type": "code", "execution_count": 18, "id": "6ef959f7", "metadata": {}, "outputs": [], "source": [ "def preview_resume_text(text, max_lines=30):\n", " if not text:\n", " print(\"❌ No text to display.\")\n", " return\n", " \n", " # Clean and split text into lines\n", " lines = [line.strip() for line in text.splitlines() if line.strip()]\n", " \n", " # Limit number of lines\n", " lines = lines[:max_lines]\n", " \n", " # Escape HTML and number the lines\n", " numbered = [f\"{i+1:02d}: {html.escape(line)}\" for i, line in enumerate(lines)]\n", "\n", " # Format with
 for alignment\n",
    "    html_content = \"
\"\n",
    "    html_content += \"\\n\".join(numbered)\n",
    "    html_content += \"
\"\n", "\n", " display(HTML(html_content))\n" ] }, { "cell_type": "code", "execution_count": 19, "id": "ac518e33", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "✅ Extracted successfully. Preview below:\n" ] }, { "data": { "text/html": [ "
01: SATHVIKKIRANKOPPOLU(+91)9063714302(cid:5)koppolusathvikkiran@gmail.comGuntur,AndhraPradesh(cid:5)LinkedIn—GitHubPROFESSIONALSUMMARYAspiringFull-StackDeveloperandAIEnthusiastwithhands-onexperienceinbuildingscalablewebappsandintelligentsystems.SkilledinJavaScript,Python,SQL,andcontainerizeddeploymentusingDockerandKubernetes.Passionateaboutproblem-solving,innovation,anddeliveringreal-worldimpactthroughsoftware.Experiencedinsupervisedandunsupervisedlearning,modeldeployment,andMLOpspracticesincludingversioningandexperimenttracking.EDUCATIONIndianInstituteOfInformationTechnology,KottayamAug2022-PresentB.TechinComputerScience(AI&DataScience)—CGPA:6.9BhashyamJuniorCollege,Guntur2020-2022Intermediate—75%EXPERIENCESCIHUBSemiconductorSolutionsPvt.Ltd.Nov2024-Feb2025SoftwareDevelopmentEngineer(FullStack)-RemoteInternshipSoftwareDevelopmentInternshipCertificate•Revampedthecompanyswebsite,leadingtoa30%improvementinloadingtimeandUIresponsiveness.•EngineeredmodulesthatcutaverageAPIresponsetimefrom1.2sto950ms.•Reducedclient-sidebugreportsby40%throughrigorousdebuggingandtesting.•CollaboratedinAgilesprintstoimplementmodularfeatures,reducingreleasecyclesfrom2weeksto5days.PROJECTSFilm-Buddy-EJS,JavaScript,CSS•Launchedaresponsivewebplatformforfilmmakers,achieving100+uniquevisitorsinthefirstmonth.•DesignedanaccessibleUIwitha90+Lighthousescore;ensuredcross-devicecompatibility.•SecureduserdataandworkflowsusingMongoDB&SQLwithJWT-basedauthenticationandRBAC.HandGestureControl-OpenCV,Python,Mediapipe,scikit-learn•Builtareal-timegesturerecognitiontool,enablinghands-freecontrolinGUIapps.•Achieved92%precisionusingMediapipeslandmarktrackingandscikit-learnclassifiers.•Integratedmodeldeploymentinbatchmodeforperiodicupdates.CIFAR-10Classification-TensorFlow,Python,Keras,MLOps,GoogleCloudPlatform•Achieved85%+accuracyusingCNN-basedimageclassificationonCIFAR-10dataset.•AppliedTransferLearning(ResNet50,VGG16),improvingbaselineperformanceby15%.•Usedexperimenttrackingandmodelversioningtoolstobenchmarkresults.•DeployedmodelendpointusingDockerandGoogleCloudcontainers.\n",
       "02: CourseEnrollmentApp-Java,SQL•DesignedaJava-basedstudentenrollmentsystemwithCRUDoperationsandauthentication.•IntegratedSQLforstructureddatastorageanddynamicrecordvisualization.•Implementeduserauthenticationandadminprivilegesforsecureandrole-basedaccess.•Handled200+studentrecordswithfiltering,search,andenrollmentstatusupdatefunctionality.TECHNICALSKILLSProgrammingLanguages:Python,Java,C++,JavaScript,SQLMachineLearning&AI:Tensor-Flow,Keras,OpenCV,scikit-learn,DeepLearning(CNN,TransferLearning),SupervisedandUnsupervisedLearningFull-StackDevelopment:React.js,Node.js,Express.js,RESTAPIs,MongoDB,MySQLSoft-wareEngineering:Object-OrientedProgramming(OOP),Agile,SoftwareTesting,DebuggingSystemDesign&DevOps:Microservices,APIDesign,Docker,Kubernetes,MLOps(experimenttracking,ver-sioning),CI/CD(Jenkins,GitHubActions)DeveloperTools:Git,VSCode,Postman,MiniforgeCloudPlatforms:GoogleCloudPlatformDataProcessing:DataCleaning,DataPreprocessing,SQLCERTIFICATIONS•DataVisualizationusingPython(GreatLearning)•AIWorkflow:MachineLearning,VisualRecognition,NLP(IBM,Coursera)•Front-EndDeveloperCourse(META,Coursera)•CrashCourseinPython(CodeChef)•MLOpsToolsandTechniquesInview•GoogleCloudMachineLearningSpecializationInviewPROFESSIONALTRAITSDetail-oriented,teamplayer,flexible,strongcommunicator,quicklearner.ThrivesincollaborativeAgileenvironmentsandpassionateaboutsolvingreal-worldproblemsthroughscalablesoftwaresolutions.LANGUAGESTelugu(Native),English(Professional),Hindi(Professional)
" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "resume_text = extract_text_from_uploaded_file(uploader)\n", "if resume_text:\n", " print(\"✅ Extracted successfully. Preview below:\")\n", " preview_resume_text(resume_text)" ] }, { "cell_type": "markdown", "id": "bd9df665", "metadata": {}, "source": [ "## Resume–Job Description Analyzer (With or Without JD Input)" ] }, { "cell_type": "markdown", "id": "03942a66", "metadata": {}, "source": [ "### Step 1: Install Required Libraries" ] }, { "cell_type": "code", "execution_count": 21, "id": "04ef6903", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Defaulting to user installation because normal site-packages is not writeable\n", "Requirement already satisfied: datasets in c:\\program files\\python311\\lib\\site-packages (3.3.2)\n", "Requirement already satisfied: scikit-learn in c:\\program files\\python311\\lib\\site-packages (1.5.0)\n", "Requirement already satisfied: nltk in c:\\program files\\python311\\lib\\site-packages (3.8.1)\n", "Requirement already satisfied: spacy in c:\\program files\\python311\\lib\\site-packages (3.7.2)\n", "Requirement already satisfied: tqdm in c:\\program files\\python311\\lib\\site-packages (4.67.1)\n", "Requirement already satisfied: filelock in c:\\program files\\python311\\lib\\site-packages (from datasets) (3.13.1)\n", "Requirement already satisfied: numpy>=1.17 in c:\\program files\\python311\\lib\\site-packages (from datasets) (1.26.4)\n", "Requirement already satisfied: pyarrow>=15.0.0 in c:\\program files\\python311\\lib\\site-packages (from datasets) (19.0.1)\n", "Requirement already satisfied: dill<0.3.9,>=0.3.0 in c:\\program files\\python311\\lib\\site-packages (from datasets) (0.3.8)\n", "Requirement already satisfied: pandas in c:\\program files\\python311\\lib\\site-packages (from datasets) (2.2.2)\n", "Requirement already satisfied: requests>=2.32.2 in c:\\program files\\python311\\lib\\site-packages (from datasets) (2.32.3)\n", "Requirement already satisfied: xxhash in c:\\program files\\python311\\lib\\site-packages (from datasets) (3.5.0)\n", "Requirement already satisfied: multiprocess<0.70.17 in c:\\program files\\python311\\lib\\site-packages (from datasets) (0.70.16)\n", "Requirement already satisfied: fsspec<=2024.12.0,>=2023.1.0 in c:\\program files\\python311\\lib\\site-packages (from fsspec[http]<=2024.12.0,>=2023.1.0->datasets) (2024.2.0)\n", "Requirement already satisfied: aiohttp in c:\\program files\\python311\\lib\\site-packages (from datasets) (3.11.13)\n", "Requirement already satisfied: huggingface-hub>=0.24.0 in c:\\program files\\python311\\lib\\site-packages (from datasets) (0.29.3)\n", "Requirement already satisfied: packaging in c:\\program files\\python311\\lib\\site-packages (from datasets) (24.0)\n", "Requirement already satisfied: pyyaml>=5.1 in c:\\program files\\python311\\lib\\site-packages (from datasets) (6.0.1)\n", "Requirement already satisfied: scipy>=1.6.0 in c:\\program files\\python311\\lib\\site-packages (from scikit-learn) (1.11.3)\n", "Requirement already satisfied: joblib>=1.2.0 in c:\\program files\\python311\\lib\\site-packages (from scikit-learn) (1.3.2)\n", "Requirement already satisfied: threadpoolctl>=3.1.0 in c:\\program files\\python311\\lib\\site-packages (from scikit-learn) (3.5.0)\n", "Requirement already satisfied: click in c:\\program files\\python311\\lib\\site-packages (from nltk) (8.1.7)\n", "Requirement already satisfied: regex>=2021.8.3 in c:\\program files\\python311\\lib\\site-packages (from nltk) (2023.10.3)\n", "Requirement already satisfied: spacy-legacy<3.1.0,>=3.0.11 in c:\\program files\\python311\\lib\\site-packages (from spacy) (3.0.12)\n", "Requirement already satisfied: spacy-loggers<2.0.0,>=1.0.0 in c:\\program files\\python311\\lib\\site-packages (from spacy) (1.0.5)\n", "Requirement already satisfied: murmurhash<1.1.0,>=0.28.0 in c:\\program files\\python311\\lib\\site-packages (from spacy) (1.0.10)\n", "Requirement already satisfied: cymem<2.1.0,>=2.0.2 in c:\\program files\\python311\\lib\\site-packages (from spacy) (2.0.8)\n", "Requirement already satisfied: preshed<3.1.0,>=3.0.2 in c:\\program files\\python311\\lib\\site-packages (from spacy) (3.0.9)\n", "Requirement already satisfied: thinc<8.3.0,>=8.1.8 in c:\\program files\\python311\\lib\\site-packages (from spacy) (8.2.1)\n", "Requirement already satisfied: wasabi<1.2.0,>=0.9.1 in c:\\program files\\python311\\lib\\site-packages (from spacy) (1.1.2)\n", "Requirement already satisfied: srsly<3.0.0,>=2.4.3 in c:\\program files\\python311\\lib\\site-packages (from spacy) (2.4.8)\n", "Requirement already satisfied: catalogue<2.1.0,>=2.0.6 in c:\\program files\\python311\\lib\\site-packages (from spacy) (2.0.10)\n", "Requirement already satisfied: weasel<0.4.0,>=0.1.0 in c:\\program files\\python311\\lib\\site-packages (from spacy) (0.3.3)\n", "Requirement already satisfied: typer<0.10.0,>=0.3.0 in c:\\program files\\python311\\lib\\site-packages (from spacy) (0.9.0)\n", "Requirement already satisfied: smart-open<7.0.0,>=5.2.1 in c:\\program files\\python311\\lib\\site-packages (from spacy) (6.4.0)\n", "Requirement already satisfied: pydantic!=1.8,!=1.8.1,<3.0.0,>=1.7.4 in c:\\program files\\python311\\lib\\site-packages (from spacy) (2.4.2)\n", "Requirement already satisfied: jinja2 in c:\\program files\\python311\\lib\\site-packages (from spacy) (3.1.2)\n", "Requirement already satisfied: setuptools in c:\\program files\\python311\\lib\\site-packages (from spacy) (65.5.0)\n", "Requirement already satisfied: langcodes<4.0.0,>=3.2.0 in c:\\program files\\python311\\lib\\site-packages (from spacy) (3.3.0)\n", "Requirement already satisfied: colorama in c:\\program files\\python311\\lib\\site-packages (from tqdm) (0.4.6)\n", "Requirement already satisfied: aiohappyeyeballs>=2.3.0 in c:\\program files\\python311\\lib\\site-packages (from aiohttp->datasets) (2.5.0)\n", "Requirement already satisfied: aiosignal>=1.1.2 in c:\\program files\\python311\\lib\\site-packages (from aiohttp->datasets) (1.3.2)\n", "Requirement already satisfied: attrs>=17.3.0 in c:\\users\\koppo\\appdata\\roaming\\python\\python311\\site-packages (from aiohttp->datasets) (23.1.0)\n", "Requirement already satisfied: frozenlist>=1.1.1 in c:\\program files\\python311\\lib\\site-packages (from aiohttp->datasets) (1.5.0)\n", "Requirement already satisfied: multidict<7.0,>=4.5 in c:\\program files\\python311\\lib\\site-packages (from aiohttp->datasets) (6.1.0)\n", "Requirement already satisfied: propcache>=0.2.0 in c:\\program files\\python311\\lib\\site-packages (from aiohttp->datasets) (0.3.0)\n", "Requirement already satisfied: yarl<2.0,>=1.17.0 in c:\\program files\\python311\\lib\\site-packages (from aiohttp->datasets) (1.18.3)\n", "Requirement already satisfied: typing-extensions>=3.7.4.3 in c:\\program files\\python311\\lib\\site-packages (from huggingface-hub>=0.24.0->datasets) (4.12.1)\n", "Requirement already satisfied: annotated-types>=0.4.0 in c:\\program files\\python311\\lib\\site-packages (from pydantic!=1.8,!=1.8.1,<3.0.0,>=1.7.4->spacy) (0.6.0)\n", "Requirement already satisfied: pydantic-core==2.10.1 in c:\\program files\\python311\\lib\\site-packages (from pydantic!=1.8,!=1.8.1,<3.0.0,>=1.7.4->spacy) (2.10.1)\n", "Requirement already satisfied: charset-normalizer<4,>=2 in c:\\users\\koppo\\appdata\\roaming\\python\\python311\\site-packages (from requests>=2.32.2->datasets) (3.2.0)\n", "Requirement already satisfied: idna<4,>=2.5 in c:\\users\\koppo\\appdata\\roaming\\python\\python311\\site-packages (from requests>=2.32.2->datasets) (3.4)\n", "Requirement already satisfied: urllib3<3,>=1.21.1 in c:\\users\\koppo\\appdata\\roaming\\python\\python311\\site-packages (from requests>=2.32.2->datasets) (1.26.16)\n", "Requirement already satisfied: certifi>=2017.4.17 in c:\\users\\koppo\\appdata\\roaming\\python\\python311\\site-packages (from requests>=2.32.2->datasets) (2023.7.22)\n", "Requirement already satisfied: blis<0.8.0,>=0.7.8 in c:\\program files\\python311\\lib\\site-packages (from thinc<8.3.0,>=8.1.8->spacy) (0.7.11)\n", "Requirement already satisfied: confection<1.0.0,>=0.0.1 in c:\\program files\\python311\\lib\\site-packages (from thinc<8.3.0,>=8.1.8->spacy) (0.1.3)\n", "Requirement already satisfied: cloudpathlib<0.17.0,>=0.7.0 in c:\\program files\\python311\\lib\\site-packages (from weasel<0.4.0,>=0.1.0->spacy) (0.16.0)\n", "Requirement already satisfied: MarkupSafe>=2.0 in c:\\users\\koppo\\appdata\\roaming\\python\\python311\\site-packages (from jinja2->spacy) (2.1.3)\n", "Requirement already satisfied: python-dateutil>=2.8.2 in c:\\users\\koppo\\appdata\\roaming\\python\\python311\\site-packages (from pandas->datasets) (2.8.2)\n", "Requirement already satisfied: pytz>=2020.1 in c:\\program files\\python311\\lib\\site-packages (from pandas->datasets) (2024.1)\n", "Requirement already satisfied: tzdata>=2022.7 in c:\\program files\\python311\\lib\\site-packages (from pandas->datasets) (2024.1)\n", "Requirement already satisfied: six>=1.5 in c:\\users\\koppo\\appdata\\roaming\\python\\python311\\site-packages (from python-dateutil>=2.8.2->pandas->datasets) (1.16.0)\n", "Note: you may need to restart the kernel to use updated packages.\n" ] }, { "name": "stderr", "output_type": "stream", "text": [ "\n", "[notice] A new release of pip is available: 25.0.1 -> 25.1.1\n", "[notice] To update, run: python.exe -m pip install --upgrade pip\n", ":128: RuntimeWarning: 'nltk.downloader' found in sys.modules after import of package 'nltk', but prior to execution of 'nltk.downloader'; this may result in unpredictable behaviour\n", "[nltk_data] Downloading package stopwords to\n", "[nltk_data] C:\\Users\\koppo\\AppData\\Roaming\\nltk_data...\n", "[nltk_data] Package stopwords is already up-to-date!\n" ] }, { "name": "stdout", "output_type": "stream", "text": [ "Defaulting to user installation because normal site-packages is not writeable\n", "Collecting en-core-web-sm==3.7.1\n", " Downloading https://github.com/explosion/spacy-models/releases/download/en_core_web_sm-3.7.1/en_core_web_sm-3.7.1-py3-none-any.whl (12.8 MB)\n", " ---------------------------------------- 0.0/12.8 MB ? eta -:--:--\n", " ----- ---------------------------------- 1.8/12.8 MB 10.1 MB/s eta 0:00:02\n", " --------- ------------------------------ 3.1/12.8 MB 8.8 MB/s eta 0:00:02\n", " ------------ --------------------------- 3.9/12.8 MB 7.8 MB/s eta 0:00:02\n", " ------------ --------------------------- 3.9/12.8 MB 7.8 MB/s eta 0:00:02\n", " ------------ --------------------------- 3.9/12.8 MB 7.8 MB/s eta 0:00:02\n", " --------------- ------------------------ 5.0/12.8 MB 3.9 MB/s eta 0:00:02\n", " ---------------------- ----------------- 7.1/12.8 MB 4.8 MB/s eta 0:00:02\n", " --------------------------- ------------ 8.7/12.8 MB 5.1 MB/s eta 0:00:01\n", " -------------------------------- ------- 10.5/12.8 MB 5.6 MB/s eta 0:00:01\n", " ------------------------------------ --- 11.5/12.8 MB 5.5 MB/s eta 0:00:01\n", " ---------------------------------------- 12.8/12.8 MB 5.7 MB/s eta 0:00:00\n", "Requirement already satisfied: spacy<3.8.0,>=3.7.2 in c:\\program files\\python311\\lib\\site-packages (from en-core-web-sm==3.7.1) (3.7.2)\n", "Requirement already satisfied: spacy-legacy<3.1.0,>=3.0.11 in c:\\program files\\python311\\lib\\site-packages (from spacy<3.8.0,>=3.7.2->en-core-web-sm==3.7.1) (3.0.12)\n", "Requirement already satisfied: spacy-loggers<2.0.0,>=1.0.0 in c:\\program files\\python311\\lib\\site-packages (from spacy<3.8.0,>=3.7.2->en-core-web-sm==3.7.1) (1.0.5)\n", "Requirement already satisfied: murmurhash<1.1.0,>=0.28.0 in c:\\program files\\python311\\lib\\site-packages (from spacy<3.8.0,>=3.7.2->en-core-web-sm==3.7.1) (1.0.10)\n", "Requirement already satisfied: cymem<2.1.0,>=2.0.2 in c:\\program files\\python311\\lib\\site-packages (from spacy<3.8.0,>=3.7.2->en-core-web-sm==3.7.1) (2.0.8)\n", "Requirement already satisfied: preshed<3.1.0,>=3.0.2 in c:\\program files\\python311\\lib\\site-packages (from spacy<3.8.0,>=3.7.2->en-core-web-sm==3.7.1) (3.0.9)\n", "Requirement already satisfied: thinc<8.3.0,>=8.1.8 in c:\\program files\\python311\\lib\\site-packages (from spacy<3.8.0,>=3.7.2->en-core-web-sm==3.7.1) (8.2.1)\n", "Requirement already satisfied: wasabi<1.2.0,>=0.9.1 in c:\\program files\\python311\\lib\\site-packages (from spacy<3.8.0,>=3.7.2->en-core-web-sm==3.7.1) (1.1.2)\n", "Requirement already satisfied: srsly<3.0.0,>=2.4.3 in c:\\program files\\python311\\lib\\site-packages (from spacy<3.8.0,>=3.7.2->en-core-web-sm==3.7.1) (2.4.8)\n", "Requirement already satisfied: catalogue<2.1.0,>=2.0.6 in c:\\program files\\python311\\lib\\site-packages (from spacy<3.8.0,>=3.7.2->en-core-web-sm==3.7.1) (2.0.10)\n", "Requirement already satisfied: weasel<0.4.0,>=0.1.0 in c:\\program files\\python311\\lib\\site-packages (from spacy<3.8.0,>=3.7.2->en-core-web-sm==3.7.1) (0.3.3)\n", "Requirement already satisfied: typer<0.10.0,>=0.3.0 in c:\\program files\\python311\\lib\\site-packages (from spacy<3.8.0,>=3.7.2->en-core-web-sm==3.7.1) (0.9.0)\n", "Requirement already satisfied: smart-open<7.0.0,>=5.2.1 in c:\\program files\\python311\\lib\\site-packages (from spacy<3.8.0,>=3.7.2->en-core-web-sm==3.7.1) (6.4.0)\n", "Requirement already satisfied: tqdm<5.0.0,>=4.38.0 in c:\\program files\\python311\\lib\\site-packages (from spacy<3.8.0,>=3.7.2->en-core-web-sm==3.7.1) (4.67.1)\n", "Requirement already satisfied: requests<3.0.0,>=2.13.0 in c:\\program files\\python311\\lib\\site-packages (from spacy<3.8.0,>=3.7.2->en-core-web-sm==3.7.1) (2.32.3)\n", "Requirement already satisfied: pydantic!=1.8,!=1.8.1,<3.0.0,>=1.7.4 in c:\\program files\\python311\\lib\\site-packages (from spacy<3.8.0,>=3.7.2->en-core-web-sm==3.7.1) (2.4.2)\n", "Requirement already satisfied: jinja2 in c:\\program files\\python311\\lib\\site-packages (from spacy<3.8.0,>=3.7.2->en-core-web-sm==3.7.1) (3.1.2)\n", "Requirement already satisfied: setuptools in c:\\program files\\python311\\lib\\site-packages (from spacy<3.8.0,>=3.7.2->en-core-web-sm==3.7.1) (65.5.0)\n", "Requirement already satisfied: packaging>=20.0 in c:\\program files\\python311\\lib\\site-packages (from spacy<3.8.0,>=3.7.2->en-core-web-sm==3.7.1) (24.0)\n", "Requirement already satisfied: langcodes<4.0.0,>=3.2.0 in c:\\program files\\python311\\lib\\site-packages (from spacy<3.8.0,>=3.7.2->en-core-web-sm==3.7.1) (3.3.0)\n", "Requirement already satisfied: numpy>=1.19.0 in c:\\program files\\python311\\lib\\site-packages (from spacy<3.8.0,>=3.7.2->en-core-web-sm==3.7.1) (1.26.4)\n", "Requirement already satisfied: annotated-types>=0.4.0 in c:\\program files\\python311\\lib\\site-packages (from pydantic!=1.8,!=1.8.1,<3.0.0,>=1.7.4->spacy<3.8.0,>=3.7.2->en-core-web-sm==3.7.1) (0.6.0)\n", "Requirement already satisfied: pydantic-core==2.10.1 in c:\\program files\\python311\\lib\\site-packages (from pydantic!=1.8,!=1.8.1,<3.0.0,>=1.7.4->spacy<3.8.0,>=3.7.2->en-core-web-sm==3.7.1) (2.10.1)\n", "Requirement already satisfied: typing-extensions>=4.6.1 in c:\\program files\\python311\\lib\\site-packages (from pydantic!=1.8,!=1.8.1,<3.0.0,>=1.7.4->spacy<3.8.0,>=3.7.2->en-core-web-sm==3.7.1) (4.12.1)\n", "Requirement already satisfied: charset-normalizer<4,>=2 in c:\\users\\koppo\\appdata\\roaming\\python\\python311\\site-packages (from requests<3.0.0,>=2.13.0->spacy<3.8.0,>=3.7.2->en-core-web-sm==3.7.1) (3.2.0)\n", "Requirement already satisfied: idna<4,>=2.5 in c:\\users\\koppo\\appdata\\roaming\\python\\python311\\site-packages (from requests<3.0.0,>=2.13.0->spacy<3.8.0,>=3.7.2->en-core-web-sm==3.7.1) (3.4)\n", "Requirement already satisfied: urllib3<3,>=1.21.1 in c:\\users\\koppo\\appdata\\roaming\\python\\python311\\site-packages (from requests<3.0.0,>=2.13.0->spacy<3.8.0,>=3.7.2->en-core-web-sm==3.7.1) (1.26.16)\n", "Requirement already satisfied: certifi>=2017.4.17 in c:\\users\\koppo\\appdata\\roaming\\python\\python311\\site-packages (from requests<3.0.0,>=2.13.0->spacy<3.8.0,>=3.7.2->en-core-web-sm==3.7.1) (2023.7.22)\n", "Requirement already satisfied: blis<0.8.0,>=0.7.8 in c:\\program files\\python311\\lib\\site-packages (from thinc<8.3.0,>=8.1.8->spacy<3.8.0,>=3.7.2->en-core-web-sm==3.7.1) (0.7.11)\n", "Requirement already satisfied: confection<1.0.0,>=0.0.1 in c:\\program files\\python311\\lib\\site-packages (from thinc<8.3.0,>=8.1.8->spacy<3.8.0,>=3.7.2->en-core-web-sm==3.7.1) (0.1.3)\n", "Requirement already satisfied: colorama in c:\\program files\\python311\\lib\\site-packages (from tqdm<5.0.0,>=4.38.0->spacy<3.8.0,>=3.7.2->en-core-web-sm==3.7.1) (0.4.6)\n", "Requirement already satisfied: click<9.0.0,>=7.1.1 in c:\\program files\\python311\\lib\\site-packages (from typer<0.10.0,>=0.3.0->spacy<3.8.0,>=3.7.2->en-core-web-sm==3.7.1) (8.1.7)\n", "Requirement already satisfied: cloudpathlib<0.17.0,>=0.7.0 in c:\\program files\\python311\\lib\\site-packages (from weasel<0.4.0,>=0.1.0->spacy<3.8.0,>=3.7.2->en-core-web-sm==3.7.1) (0.16.0)\n", "Requirement already satisfied: MarkupSafe>=2.0 in c:\\users\\koppo\\appdata\\roaming\\python\\python311\\site-packages (from jinja2->spacy<3.8.0,>=3.7.2->en-core-web-sm==3.7.1) (2.1.3)\n", "\u001b[38;5;2m✔ Download and installation successful\u001b[0m\n", "You can now load the package via spacy.load('en_core_web_sm')\n" ] }, { "name": "stderr", "output_type": "stream", "text": [ "C:\\Users\\koppo\\AppData\\Roaming\\Python\\Python311\\site-packages\\torch\\utils\\_pytree.py:185: FutureWarning: optree is installed but the version is too old to support PyTorch Dynamo in C++ pytree. C++ pytree support is disabled. Please consider upgrading optree using `python3 -m pip install --upgrade 'optree>=0.13.0'`.\n", " warnings.warn(\n", "\n", "[notice] A new release of pip is available: 25.0.1 -> 25.1.1\n", "[notice] To update, run: python.exe -m pip install --upgrade pip\n" ] } ], "source": [ "%pip install datasets scikit-learn nltk spacy tqdm\n", "!python -m nltk.downloader stopwords\n", "!python -m spacy download en_core_web_sm" ] }, { "cell_type": "markdown", "id": "02a240ec", "metadata": {}, "source": [ "### Load Job Descriptions Dataset from Hugging Face" ] }, { "cell_type": "code", "execution_count": 25, "id": "f7383cd0", "metadata": {}, "outputs": [ { "data": { "application/vnd.jupyter.widget-view+json": { "model_id": "7cd26f6084fb4b918a61b4de2e7c5e71", "version_major": 2, "version_minor": 0 }, "text/plain": [ "VBox(children=(HTML(value='
kagglehub[hf-datasets]) (3.13.1)\n", "Requirement already satisfied: numpy>=1.17 in c:\\program files\\python311\\lib\\site-packages (from datasets->kagglehub[hf-datasets]) (1.26.4)\n", "Requirement already satisfied: pyarrow>=15.0.0 in c:\\program files\\python311\\lib\\site-packages (from datasets->kagglehub[hf-datasets]) (19.0.1)\n", "Requirement already satisfied: dill<0.3.9,>=0.3.0 in c:\\program files\\python311\\lib\\site-packages (from datasets->kagglehub[hf-datasets]) (0.3.8)\n", "Requirement already satisfied: xxhash in c:\\program files\\python311\\lib\\site-packages (from datasets->kagglehub[hf-datasets]) (3.5.0)\n", "Requirement already satisfied: multiprocess<0.70.17 in c:\\program files\\python311\\lib\\site-packages (from datasets->kagglehub[hf-datasets]) (0.70.16)\n", "Requirement already satisfied: fsspec<=2024.12.0,>=2023.1.0 in c:\\program files\\python311\\lib\\site-packages (from fsspec[http]<=2024.12.0,>=2023.1.0->datasets->kagglehub[hf-datasets]) (2024.2.0)\n", "Requirement already satisfied: aiohttp in c:\\program files\\python311\\lib\\site-packages (from datasets->kagglehub[hf-datasets]) (3.11.13)\n", "Requirement already satisfied: huggingface-hub>=0.24.0 in c:\\program files\\python311\\lib\\site-packages (from datasets->kagglehub[hf-datasets]) (0.29.3)\n", "Requirement already satisfied: charset-normalizer<4,>=2 in c:\\users\\koppo\\appdata\\roaming\\python\\python311\\site-packages (from requests->kagglehub[hf-datasets]) (3.2.0)\n", "Requirement already satisfied: idna<4,>=2.5 in c:\\users\\koppo\\appdata\\roaming\\python\\python311\\site-packages (from requests->kagglehub[hf-datasets]) (3.4)\n", "Requirement already satisfied: urllib3<3,>=1.21.1 in c:\\users\\koppo\\appdata\\roaming\\python\\python311\\site-packages (from requests->kagglehub[hf-datasets]) (1.26.16)\n", "Requirement already satisfied: certifi>=2017.4.17 in c:\\users\\koppo\\appdata\\roaming\\python\\python311\\site-packages (from requests->kagglehub[hf-datasets]) (2023.7.22)\n", "Requirement already satisfied: colorama in c:\\program files\\python311\\lib\\site-packages (from tqdm->kagglehub[hf-datasets]) (0.4.6)\n", "Requirement already satisfied: python-dateutil>=2.8.2 in c:\\users\\koppo\\appdata\\roaming\\python\\python311\\site-packages (from pandas->kagglehub[hf-datasets]) (2.8.2)\n", "Requirement already satisfied: pytz>=2020.1 in c:\\program files\\python311\\lib\\site-packages (from pandas->kagglehub[hf-datasets]) (2024.1)\n", "Requirement already satisfied: tzdata>=2022.7 in c:\\program files\\python311\\lib\\site-packages (from pandas->kagglehub[hf-datasets]) (2024.1)\n", "Requirement already satisfied: aiohappyeyeballs>=2.3.0 in c:\\program files\\python311\\lib\\site-packages (from aiohttp->datasets->kagglehub[hf-datasets]) (2.5.0)\n", "Requirement already satisfied: aiosignal>=1.1.2 in c:\\program files\\python311\\lib\\site-packages (from aiohttp->datasets->kagglehub[hf-datasets]) (1.3.2)\n", "Requirement already satisfied: attrs>=17.3.0 in c:\\users\\koppo\\appdata\\roaming\\python\\python311\\site-packages (from aiohttp->datasets->kagglehub[hf-datasets]) (23.1.0)\n", "Requirement already satisfied: frozenlist>=1.1.1 in c:\\program files\\python311\\lib\\site-packages (from aiohttp->datasets->kagglehub[hf-datasets]) (1.5.0)\n", "Requirement already satisfied: multidict<7.0,>=4.5 in c:\\program files\\python311\\lib\\site-packages (from aiohttp->datasets->kagglehub[hf-datasets]) (6.1.0)\n", "Requirement already satisfied: propcache>=0.2.0 in c:\\program files\\python311\\lib\\site-packages (from aiohttp->datasets->kagglehub[hf-datasets]) (0.3.0)\n", "Requirement already satisfied: yarl<2.0,>=1.17.0 in c:\\program files\\python311\\lib\\site-packages (from aiohttp->datasets->kagglehub[hf-datasets]) (1.18.3)\n", "Requirement already satisfied: typing-extensions>=3.7.4.3 in c:\\program files\\python311\\lib\\site-packages (from huggingface-hub>=0.24.0->datasets->kagglehub[hf-datasets]) (4.12.1)\n", "Requirement already satisfied: six>=1.5 in c:\\users\\koppo\\appdata\\roaming\\python\\python311\\site-packages (from python-dateutil>=2.8.2->pandas->kagglehub[hf-datasets]) (1.16.0)\n", "Downloading kagglehub-0.3.12-py3-none-any.whl (67 kB)\n", "Installing collected packages: kagglehub\n", "Successfully installed kagglehub-0.3.12\n", "Note: you may need to restart the kernel to use updated packages.\n" ] }, { "name": "stderr", "output_type": "stream", "text": [ "\n", "[notice] A new release of pip is available: 25.0.1 -> 25.1.1\n", "[notice] To update, run: python.exe -m pip install --upgrade pip\n" ] } ], "source": [ "pip install kagglehub[hf-datasets]" ] }, { "cell_type": "code", "execution_count": 31, "id": "d0dcf353", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Defaulting to user installation because normal site-packages is not writeable\n", "Collecting kaggle\n", " Downloading kaggle-1.7.4.5-py3-none-any.whl.metadata (16 kB)\n", "Requirement already satisfied: bleach in c:\\program files\\python311\\lib\\site-packages (from kaggle) (6.1.0)\n", "Requirement already satisfied: certifi>=14.05.14 in c:\\users\\koppo\\appdata\\roaming\\python\\python311\\site-packages (from kaggle) (2023.7.22)\n", "Requirement already satisfied: charset-normalizer in c:\\users\\koppo\\appdata\\roaming\\python\\python311\\site-packages (from kaggle) (3.2.0)\n", "Requirement already satisfied: idna in c:\\users\\koppo\\appdata\\roaming\\python\\python311\\site-packages (from kaggle) (3.4)\n", "Requirement already satisfied: protobuf in c:\\users\\koppo\\appdata\\roaming\\python\\python311\\site-packages (from kaggle) (5.29.4)\n", "Requirement already satisfied: python-dateutil>=2.5.3 in c:\\users\\koppo\\appdata\\roaming\\python\\python311\\site-packages (from kaggle) (2.8.2)\n", "Collecting python-slugify (from kaggle)\n", " Downloading python_slugify-8.0.4-py2.py3-none-any.whl.metadata (8.5 kB)\n", "Requirement already satisfied: requests in c:\\program files\\python311\\lib\\site-packages (from kaggle) (2.32.3)\n", "Requirement already satisfied: setuptools>=21.0.0 in c:\\program files\\python311\\lib\\site-packages (from kaggle) (65.5.0)\n", "Requirement already satisfied: six>=1.10 in c:\\users\\koppo\\appdata\\roaming\\python\\python311\\site-packages (from kaggle) (1.16.0)\n", "Collecting text-unidecode (from kaggle)\n", " Downloading text_unidecode-1.3-py2.py3-none-any.whl.metadata (2.4 kB)\n", "Requirement already satisfied: tqdm in c:\\program files\\python311\\lib\\site-packages (from kaggle) (4.67.1)\n", "Requirement already satisfied: urllib3>=1.15.1 in c:\\users\\koppo\\appdata\\roaming\\python\\python311\\site-packages (from kaggle) (1.26.16)\n", "Requirement already satisfied: webencodings in c:\\program files\\python311\\lib\\site-packages (from kaggle) (0.5.1)\n", "Requirement already satisfied: colorama in c:\\program files\\python311\\lib\\site-packages (from tqdm->kaggle) (0.4.6)\n", "Downloading kaggle-1.7.4.5-py3-none-any.whl (181 kB)\n", "Downloading python_slugify-8.0.4-py2.py3-none-any.whl (10 kB)\n", "Downloading text_unidecode-1.3-py2.py3-none-any.whl (78 kB)\n", "Installing collected packages: text-unidecode, python-slugify, kaggle\n", "Successfully installed kaggle-1.7.4.5 python-slugify-8.0.4 text-unidecode-1.3\n", "Note: you may need to restart the kernel to use updated packages.\n" ] }, { "name": "stderr", "output_type": "stream", "text": [ "\n", "[notice] A new release of pip is available: 25.0.1 -> 25.1.1\n", "[notice] To update, run: python.exe -m pip install --upgrade pip\n" ] } ], "source": [ "pip install kaggle" ] }, { "cell_type": "code", "execution_count": 32, "id": "0c7c78fc", "metadata": {}, "outputs": [], "source": [ "import os\n", "import json\n", "\n", "# Define path\n", "kaggle_json = {\n", " \"username\": \"sathvikkirank\",\n", " \"key\": \"4e476a595ed72c041efbd856398c5bee\"\n", "}\n", "\n", "# Write this JSON to ~/.kaggle/kaggle.json\n", "os.makedirs(os.path.expanduser(\"~/.kaggle\"), exist_ok=True)\n", "with open(os.path.expanduser(\"~/.kaggle/kaggle.json\"), \"w\") as f:\n", " json.dump(kaggle_json, f)\n", "\n", "# Set permission\n", "os.chmod(os.path.expanduser(\"~/.kaggle/kaggle.json\"), 0o600)\n" ] }, { "cell_type": "code", "execution_count": 33, "id": "ce656b75", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Dataset URL: https://www.kaggle.com/datasets/gauravduttakiit/resume-dataset\n", "License(s): CC0-1.0\n", "Downloading resume-dataset.zip to f:\\New folder (2)\\resume-analyzer\n", "\n" ] }, { "name": "stderr", "output_type": "stream", "text": [ "\n", " 0%| | 0.00/383k [00:00\n", "RangeIndex: 962 entries, 0 to 961\n", "Data columns (total 2 columns):\n", " # Column Non-Null Count Dtype \n", "--- ------ -------------- ----- \n", " 0 Category 962 non-null object\n", " 1 Resume 962 non-null object\n", "dtypes: object(2)\n", "memory usage: 15.2+ KB\n" ] }, { "data": { "text/plain": [ "Category 0\n", "Resume 0\n", "dtype: int64" ] }, "execution_count": 36, "metadata": {}, "output_type": "execute_result" } ], "source": [ "import pandas as pd\n", "\n", "df = pd.read_csv(\"resume_dataset/UpdatedResumeDataSet.csv\") # or .json if applicable\n", "df.head()\n", "df.info()\n", "df.describe(include='all')\n", "df.isnull().sum()" ] } ], "metadata": { "kernelspec": { "display_name": "Python 3", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.11.5" } }, "nbformat": 4, "nbformat_minor": 5 }