Logo Lanfrica

AKWOKING/cameroon-job-miner

Domaine:

digital infrastructure

Type de record:

software
Créateur:
AKW
Hôte:
Automated web scraping and data mining system that tracks in-demand technical skills across four Cameroonian job portals. # 🇨🇲 Cameroon Tech Job Market Miner > Automated web mining & skill trend analysis for the Cameroonian technology sector > Academic project — Data Mining & Applications, 2025/2026 --- ## What it does Scrapes tech job listings from **4 Cameroonian job portals** every week, extracts in-demand skills using a bilingual (French/English) NLP pipeline, runs association rule mining and K-Means clustering, then presents everything in a **live public Streamlit dashboard**. | Portal | URL | |---|---| | Emploi.cm | emploi.cm | | Talent.cm | cm.talent.com | | Expertini.cm | cm.expertini.com | | WorkConnect | workconnectjob.com | --- ## Project phases | Phase | Weeks | Status | Built | |-------|-------|--------|-------| | **1 — Scraping** | 1–2 | ✅ | 4 scraper classes, SQLite storage, CSV export | | **2 — Processing** | 3–4 | ✅ | Cleaning, bilingual taxonomy, NLP skill extraction | | **3 — Mining & Dashboard** | 5–6 | ✅ | Apriori rules, K-Means, Streamlit dashboard | | **4 — Deploy & Document** | 7–8 | ✅ | Render.com config, GitHub Actions, full docs | --- ## Quick start ```bash # 1. Set up git clone github.com cd cameroon-job-miner python -m venv venv && venv\Scripts\activate # Windows pip install -r requirements.txt # 2. Scrape (Phase 1) python run_scrapers.py # 3. Clean + Mine (Phases 2 & 3) python run_pipeline.py # 4. Dashboard streamlit run app.py ``` --- ## Project structure ``` cameroon-job-miner/ ├── scrapers/ Phase 1 — web scraping │ ├── base_scraper.py httpx + BeautifulSoup base class │ ├── emploi_cm.py │ ├── talent_cm.py │ ├── expertini_cm.py │ └── workconnect.py auto-falls back to Selenium │ ├── pipeline/ Phases 2 & 3 — processing & mining │ ├── cleaner.py normalise, detect language, extract skills │ └── miner.py Apriori association rules + K-Means │ ├── data/ │ ├── …