wiki scrapping
# Corpus Wolof – Scraping Wikipédia pour NLP
Ce projet a pour objectif de **constituer un corpus en langue Wolof** à partir de Wikipédia (`wo.wikipedia.org`) pour des travaux de **Natural Language Processing (NLP)**, incluant la récupération de mots, expressions et articles complets.
---
## Table des matières
1. Présentation
2. Scripts utilisés
3. Workflow de scraping
4. Installation et dépendances
5. Exécution
6. Fichiers générés
7. Bonnes pratiques
8. Conseils pour NLP
9. Auteur
---
## Présentation
Wikipédia Wolof est limité en contenu, et certains articles n'ont pas de texte extractible directement. Ce projet combine trois approches pour maximiser la récupération de données :
1. **Scraping direct des pages en français** pour extraire les mots Wolof listés dans les tableaux de vocabulaire.
2. **API MediaWiki (`generator=allpages`)** pour récupérer les articles complets en wikitext.
3. **Version améliorée avec fallback HTML** pour garantir le texte même si `prop=extracts` est vide.
Le corpus obtenu permet d’alimenter des modèles NLP pour :
- Analyse lexicale et morphologique.
- Création de dictionnaires.
- Applications de traduction ou NLP Wolof.
---
## Scripts utilisés
### 1. `scrape_vocab_wolof.py`
- Scraping direct depuis la page Wikipédia **française** sur la langue Wolof.
- Utilise **BeautifulSoup** pour extraire les mots dans les tableaux.
- Sauvegarde en CSV (`mots_wolof.csv`) avec une colonne `mot_wolof`.
**Usage :**
```bash
python scrape_vocab_wolof.py
```
2. wowiki_scraper.py
Scraping via l’API MediaWiki pour récupérer le wikitext complet (prop=revisions).
Filtrage par préfixe de titre (--prefix) et longueur minimum (--min-chars).
Sauvegarde en JSONL et optionnellement en CSV.
Usage :
python wowiki_scraper.py --limit 5000 --out wowiki.jsonl --csv wowiki.csv
3. wowiki_scraper_v2.py
Version améliorée : récupère d’abord prop=extracts et, en cas de texte vide, fait un fallback HTML (action=parse) converti en texte avec BeautifulSoup.
Ass …