Reddit contient des données précieuses -- posts, comments, subreddits, authors, et plus encore. Gratter ces données directement implique de faire face à la détection anti-bot, aux CAPTCHAs, à la rotation d'IP et à des sélecteurs qui se cassent constamment. L'API Scavio gère tout cela et renvoie un JSON propre et structuré à partir d'une seule requête POST.
Ce tutoriel vous montre comment gratter Reddit en utilisant Python et l'API Scavio. À la fin, vous aurez un script Python fonctionnel qui récupère les données en temps réel de Reddit et analyse les résultats.
Prérequis
- Python installé sur votre machine
- Une clé API Scavio (free tier comprend 50 crédits à l'inscription -- aucune carte bancaire requise)
Étape 1 : Installer les dépendances
Installez requests pour effectuer des requêtes HTTP :
pip install requestsÉtape 2 : Effectuer votre première recherche Reddit
Envoyez une requête POST à l'endpoint API Scavio Reddit avec votre requête. L'API renvoie un JSON structuré avec posts, comments, subreddits et plus encore.
import requests
API_KEY = "your_scavio_api_key"
response = requests.post(
"https://api.scavio.dev/api/v1/reddit/search",
headers={
"x-api-key": API_KEY,
"Content-Type": "application/json",
},
json={"query": query, "sort": "new"},
)
data = response.json()
for post in data["data"].get("posts", [])[:5]:
print(f"r/{post['subreddit']} — {post['title']}")
print(f" by u/{post['author']}")Étape 3 : Exemple de réponse
L'API renvoie un JSON structuré. Voici un exemple de réponse pour une recherche Reddit :
{
"data": {
"searchQuery": "best python web frameworks 2026",
"totalResults": 14,
"nextCursor": "eyJjYW5kaWRhdGVzX3JldH...",
"posts": [
{
"position": 0,
"id": "t3_1smb9du",
"title": "FastAPI vs Django in 2026 — what the teams are actually using",
"url": "https://www.reddit.com/r/Python/comments/1smb9du/fastapi_vs_django/",
"subreddit": "Python",
"author": "python_dev",
"timestamp": "2026-04-15T16:34:40.389000+0000",
"nsfw": false
}
]
},
"response_time": 5200,
"credits_used": 2,
"credits_remaining": 498
}Chaque champ est structuré et typé -- pas d'analyse HTML, pas de sélecteurs CSS, pas d'extraction par regex. Votre code Python peut accéder directement à n'importe quel champ.
Étape 4 : Exemple complet fonctionnel
Voici un script Python complet et exécutable qui recherche Reddit et affiche les résultats :
"""
Scrape Reddit search results using Scavio API.
Returns structured JSON with posts, comments, subreddits, and more.
"""
import requests
import json
API_KEY = "your_scavio_api_key"
def search_reddit(query: str) -> dict:
response = requests.post(
"https://api.scavio.dev/api/v1/reddit/search",
headers={
"x-api-key": API_KEY,
"Content-Type": "application/json",
},
json={"query": query, "sort": "new"},
)
response.raise_for_status()
return response.json()
if __name__ == "__main__":
results = search_reddit("best python web frameworks 2026")
print(json.dumps(results, indent=2))Pourquoi utiliser Scavio plutôt que de gratter Reddit directement ?
- Pas de gestion de proxy. Le grattage direct nécessite des proxies tournants pour éviter les bannissements IP. Scavio gère tout cela côté serveur.
- Pas de résolution de CAPTCHA. Reddit bloque agressivement les requêtes automatisées. Scavio renvoie des données propres à chaque fois.
- Sortie JSON structurée. Pas d'analyse HTML ni de maintenance de sélecteurs CSS. Obtenez des données typées et cohérentes à chaque requête.
- Multi-plateforme dans une seule API. Recherchez sur Google, Amazon, YouTube et Walmart avec la même clé API et le même modèle d'authentification.
- Niveau gratuit inclus. 50 crédits à l'inscription sans carte bancaire requise. Chaque recherche coûte 1 crédit.