Initial commit: existing turf_saas codebase

Co-Authored-By: Paperclip <noreply@paperclip.ing>
This commit is contained in:
ML Engineer
2026-04-25 17:18:43 +02:00
commit ed07c8a3d1
137 changed files with 36398 additions and 0 deletions

188
WORKFLOW_SCRAPING.md Executable file
View File

@@ -0,0 +1,188 @@
# 🏢 H3R7Tech - Workflow Extraction Artisans
## 📋 Résumé
Ce workflow permet d'extraire les coordonnées des artisans d'une ville précise depuis les annuaires professionnels et de les intégrer dans un CRM.
---
## 🏗️ Architecture de la Solution
```
┌─────────────────┐ ┌─────────────────┐ ┌─────────────────┐
│ EXTRACTION │────▶│ STOCKAGE │────▶│ CRM │
│ │ │ │ │ │
│ • Pages Jaunes │ │ • Fichier JSON │ │ • Suivi statut │
│ • Google Maps │ │ • Export CSV │ │ • Scoring │
│ • Google Search │ │ • Google Sheets │ │ • Relances │
└─────────────────┘ └─────────────────┘ └─────────────────┘
```
---
## 🔧 Méthodes d'Extraction (Gratuites)
### Option 1: Script Python (Ce projet)
```bash
python3 scraper_artisans.py --profession "cordonnier" --ville "lille" --cp "59000"
```
### Option 2: Extension Chrome "Web Scraper"
1. Installer l'extension "Web Scraper" sur Chrome
2. Créer un sitemap pour PagesJaunes
3. Exporter les données en CSV
4. Importer dans le CRM
### Option 3: Google Sheets + ImportXML
```excel
=IMPORTXML("https://www.pagesjaunes.fr/annuaire/lille-59000/cordonnier", "//div[@class='bi-thu__ItemSearchResult']")
```
---
## 📊 Données Extraites
| Champ | Description | Exemple |
|-------|-------------|---------|
| Nom | Nom de l'artisan | Dupont Philippe |
| Entreprise | Nom de l'entreprise | Dupont Cordonnerie |
| Activité | Métier | Cordonnier |
| Adresse | Adresse complète | 45 Rue Nationale, Lille 59000 |
| Téléphone | Numéro | 0320123456 |
| Site web | URL | www.dupont-cordonnerie.fr |
| Note | Note Google | 4.5 |
| Avis | Nombre d'avis | 120 |
---
## 💾 Stockage
### Format JSON (CRM local)
```json
{
"prospects": [
{
"id": 1,
"nom": "Dupont Philippe",
"entreprise": "Dupont Cordonnerie",
"tel": "0320123456",
"secteur": "Cordonnier",
"statut": "nouveau",
"score": 4,
"notes": "Adresse: 45 Rue Nationale...",
"source": "Scraping",
"created": "2026-02-25T20:42:00"
}
]
}
```
### Export CSV (pour Google Sheets)
Le script génère un fichier CSV compatible Google Sheets:
- `exports/prospects_20260225_204200.csv`
---
## 📊 CRM - Suivi des Contacts
### Statuts de suivi
| Statut | Description | Action |
|--------|-------------|--------|
| 🔵 Nouveau | Prospect nouvellement ajouté | À appeler |
| 🟡 Qualifié | Besoin identifié | Proposition |
| 🟣 Proposition | Devis envoyé | En attente |
| 🟢 Gagné | Client acquis | Suivi SAV |
| 🔴 Perdu | Pas de réponse | À relancer |
### Score de qualification (1-5)
| Score | Critères |
|-------|----------|
| ⭐ | Nom uniquement |
| ⭐⭐ | + Téléphone |
| ⭐⭐⭐ | + Note/avis |
| ⭐⭐⭐⭐ | + Site web |
| ⭐⭐⭐⭐⭐ | Complete |
---
## 🚀 Utilisation
### 1. Lancer le scraper
```bash
python3 scraper_artisans.py --profession "cordonnier" --ville "lille" --cp "59000"
```
### 2. Ajouter manuellement
Via l'interface: http://178.18.250.53:8765/scraper_pro.html
### 3. Exporter vers Google Sheets
1.Exporter en CSV depuis le CRM
2.Importer dans Google Sheets
3.Configurer les filtres
---
## 📱 Intégrations Gratuites Recommandées
### CRM Gratuits
| Service | Limite gratuite | Features |
|---------|-----------------|----------|
| HubSpot Free | 1 user, 1M contacts | Complet |
| Airtable | 1,000 rows | Base + Views |
| Notion | Illimité | Database |
| Google Sheets | Illimité | + ImportXML |
### Google Sheets - Configuration
1. Créer un nouveau Sheet
2. Importer le CSV exporté
3. Créer des vues filtrées par statut
4. Ajouter des validations de données
---
## ⚠️ Limitations Techniques
### PagesJaunes / Google Maps
- **Bloquent** les requêtes automatisées
- **Cloudflare** active des CAPTCHA
- **Solution**: Utiliser un navigateur headless (Playwright) avec stealth mode
### Alternatives
- **APIfy**: Service payants avec proxy rotatif
- **ScraperAPI**: Crédits gratuits disponibles
- **Manual**: Ajout manuel via l'interface
---
## 📁 Fichiers du Projet
```
/home/h3r7/turf_scraper/
├── scraper_artisans.py # Script principal
├── crm_prospects.json # Base CRM
├── exports/ # Exports CSV
│ └── prospects_*.csv
└── scraper_pro.html # Interface web
```
---
## 🎯 Checklist de Qualification
- [ ] Téléphone disponible → Appeler
- [ ] Note > 4.0 → Priorité haute
- [ ] Avis > 50 → Qualité confirmée
- [ ] Site web → Demander un devis en ligne
- [ ] Dans la zone → Visite commerciale
---
## 📞 Scripts de Prospection
Voir le document: SCRIPTS_DEMARCHAGE.html
---
*Document généré le 25/02/2026 - H3R7Tech*