Logo Lanfrica

5237-mests/Amharic-E-commerce-Data-Extractor

Domain:

natural language processing

Record type:

project
Creator:
523
Host:
A Telegram scraper to collect text, images, and metadata ## πŸ“„ `README.md` for KAIM Week 4 Project # πŸ“¦ Amharic E-commerce NER System for EthioMart This project is part of **10 Academy KAIM Week 4**, focused on developing a transformer-based **Named Entity Recognition (NER)** system for extracting structured business data (Product, Price, Location) from unstructured **Amharic Telegram messages**. The end goal is to help **EthioMart**: - Centralize e-commerce product listings from Telegram - Score vendors for **micro-lending opportunities** --- ## πŸš€ Project Highlights - βœ… Custom **Telegram scraper** (via Telethon) - βœ… Amharic text **preprocessing and normalization** - βœ… CoNLL-format **NER dataset creation** (manual labeling) - βœ… Model fine-tuning using Hugging Face (`XLM-R`, `BERT-Amharic`, etc.) - βœ… **SHAP/LIME** for model interpretability - βœ… Vendor scoring system for **FinTech insights** --- ## πŸ“‚ Project Structure β”œβ”€β”€ data/ β”‚ β”œβ”€β”€ raw/ # Raw scraped Telegram data β”‚ β”œβ”€β”€ processed/ # Cleaned text data β”‚ β”œβ”€β”€ labeled/ # CoNLL-labeled NER data β”‚ └── telegram_media/ # Downloaded product images β”‚ β”œβ”€β”€ notebooks/ # Jupyter notebooks per task β”‚ β”œβ”€β”€ 01_data_ingestion.ipynb β”‚ β”œβ”€β”€ 02_preprocessing.ipynb β”‚ β”œβ”€β”€ 03_labeling.ipynb β”‚ └── ... β”‚ β”œβ”€β”€ src/ β”‚ β”œβ”€β”€ scraping/telegram_scraper.py β”‚ β”œβ”€β”€ preprocessing/clean_text.py β”‚ └── fintech/scorecard.py β”‚ β”œβ”€β”€ scripts/ # Helper scripts (e.g., CoNLL labeling) β”œβ”€β”€ models/ # Fine-tuned model files and metrics β”œβ”€β”€ reports/ # Interim and final PDF reports β”œβ”€β”€ streamlit_app.py # (Optional) Web app UI β”œβ”€β”€ config.yaml # API keys, model config β”œβ”€β”€ README.md └── requirements.txt --- ## πŸ“Š NER Entity Types | Entity | Example | | ---------- | ------------------------ | | `Product` | "vaporfoam", "cake rack" | | `Price` | "3000 α‰₯ር", "Price 2000" | | `Location` | "αŠ α‹²αˆ΅ αŠ α‰ α‰£", "α‰¦αˆŒ" | Annotated with the BIO format: `B-Product`, `I-PRICE`, `O`, etc. --- ## πŸ“₯ Data Collection We scraped 1000+ messages from real e-commerce Telegram channels like: - `@Shageronlinestore` …