Une solution Python moderne et éthique pour la vérification des numéros de téléphone sur les réseaux sociaux.
Ce projet permet de vérifier rapidement et efficacement si un numéro de téléphone est enregistré sur différentes plateformes comme WhatsApp, Telegram, Instagram et Snapchat, tout en respectant les bonnes pratiques et les limitations d'API.
🚀 Performances Optimales
- Architecture asynchrone pour des vérifications ultra-rapides
- Système de cache intelligent avec score de fraîcheur
- Rate limiting intégré pour respecter les limites des APIs
🛡️ Sécurité & Éthique
- Vérifications éthiques sans notifications aux utilisateurs
- Respect complet du RGPD
- Gestion sécurisée des données sensibles
🎯 Plateformes Supportées
- WhatsApp - Vérification via l'API wa.me
- Telegram - Détection de présence discrète
- Instagram - Recherche de profil associé
- Snapchat - Vérification de l'existence du compte
# Cloner le repository
git clone https://github.com/nabz0r/modern-phone-checker.git
cd modern-phone-checker
# Créer l'environnement virtuel
python -m venv venv
source venv/bin/activate # Windows: venv\\Scripts\\activate
# Installer les dépendances
pip install -r requirements.txt
En ligne de commande :
# Vérifier un numéro
python -m phone_checker check +33612345678
# Lancer l'API REST
python -m phone_checker serve
En tant que bibliothèque Python :
from phone_checker import PhoneChecker
async def check_number():
checker = PhoneChecker()
await checker.initialize()
results = await checker.check_number(
phone="612345678",
country_code="33"
)
for result in results:
print(f"{result.platform}: {'✅' if result.exists else '❌'}")
Le projet est conçu de manière modulaire avec :
modern-phone-checker/
├── phone_checker/ # Code source principal
│ ├── core.py # Logique centrale
│ ├── cache.py # Système de cache intelligent
│ ├── models.py # Modèles de données
│ └── platforms/ # Vérificateurs par plateforme
├── tests/ # Tests unitaires et d'intégration
└── docs/ # Documentation détaillée
Les contributions sont les bienvenues ! N'hésitez pas à :
- 🐛 Signaler des bugs
- 💡 Proposer des fonctionnalités
- 🔧 Soumettre des pull requests
- 📧 Email : nabz0r@gmail.com
- 🐙 GitHub : @nabz0r
MIT License - © 2025 nabz0r
----------------------------------------------------------------------------------- by @ Rhuan
Check phone numbers and email addresses across popular social platforms from the command line, with caching and a mock monetization flow.
Features
✅ Phone lookup on WhatsApp, Telegram, Instagram, and Snapchat
📧 Email validation (syntax + MX lookup)
💾 **Async cache (configurable expiration)
🔒 Mock monetization: free vs. paid flows via --api-key
🚀 Rich CLI output with tables, panels, and status indicators
🔧 Fully typed with dataclasses, MyPy-compatible
# Clone the repo
git clone https://github.com/your-org/modern_phone_checker.git
cd modern_phone_checker
# Create and activate a virtual environment
python -m venv .venv
# Windows
.venv\Scripts\activate
# Linux / macOS
source .venv/bin/activate
# Install dependencies
pip install -r requirements.txt
# Install the package in editable mode
pip install -e .
Or install from PyPI:
pip install modern_phone_checker
modern-phone-checker --help
By default, only WhatsApp and Telegram checks run without an API key:
modern-phone-checker check --phone 612345678
Default country code is 33 (France). To check Luxembourg or Brazil:
modern-phone-checker check --phone 691234567 --country 352 # Luxembourg
modern-phone-checker check --phone 11999998888 --country 55 # Brazil
Provide an API key to unlock all checks (Instagram, Snapchat, Email):
modern-phone-checker check \
--phone 612345678 \
--email example@domain.com \
--api-key YOUR_KEY_HERE
modern-phone-checker check --phone 612345678 --force-refresh
modern-phone-checker check --phone 612345678 --cache-expire 600
Flag | Description |
---|---|
--phone |
Phone number in E.164 or national format |
--email |
Email address to check |
--country, -c |
Country code (default: 33 for France) |
--api-key |
Enable premium checks (Instagram, Snapchat, Email) |
--force-refresh |
Ignore cache and run fresh verification |
--cache-expire |
Cache TTL in seconds (default: 3600) |
--help |
Show help message |
Feel free to open issues or pull requests. For development:
# run tests
gpytest -q
MIT © Rhuan Pablo da Silva