Plus de 70 % des sites web modernes s'appuient sur JavaScript pour afficher leur contenu. Une requête HTTP standard ne voit que la structure HTML initiale. Les données réelles se chargent après l'exécution de JavaScript, c'est pourquoi les outils de scraping traditionnels renvoient des pages vides.
Les Browser Tasks de FourA résolvent ce problème en exécutant une véritable instance headless de Chrome pour chaque requête.
Comment ça marche
Lorsque vous envoyez une tâche avec type: "browser", FourA :
- Lance un navigateur Chrome headless
- Navigue vers l'URL cible
- Attend que le JavaScript s'exécute et que le DOM se stabilise
- Attend éventuellement qu'un sélecteur CSS spécifique apparaisse
- Renvoie le HTML entièrement rendu
Tout ce processus se déroule sur l'infrastructure de FourA. Vous récupérez un HTML propre sans avoir à installer de navigateur, à configurer Puppeteer ou à gérer les mises à jour de Chrome.
Quand utiliser les Browser Tasks
Utilisez les Browser Tasks lorsque :
- Applications monopages ou SPA (React, Vue, Angular)
- Pages avec chargement différé ou lazy-loading (défilement infini, boutons « charger plus »)
- Sites nécessitant un consentement aux cookies ou une configuration JS initiale
- Contenu situé derrière des flux d'authentification côté client
Privilégiez les tâches single lorsque :
- Pages HTML générées côté serveur (sites d'actualités, blogs, wikis)
- API REST qui renvoient directement du JSON
- La vitesse est la priorité (les Browser Tasks prennent de 2 à 10 secondes, contre moins d'une seconde pour les tâches
single)
Exemple : scraper une application React
curl -X POST https://eu.api.foura.ai/api/v1/tasks \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"url": "https://example.com/dashboard",
"type": "browser",
"options": {
"waitFor": ".dashboard-content",
"timeout": 15000
}
}'
Le sélecteur waitFor indique à FourA d'attendre que .dashboard-content apparaisse dans le DOM avant de capturer la page. Cela garantit que toutes les données asynchrones sont chargées.
Conseils de performance
- Utilisez toujours
waitForavec un sélecteur spécifique au lieu de vous fier aux délais d'attente (timeouts). C'est à la fois plus rapide et plus fiable. - Définissez un timeout raisonnable. 15 secondes suffisent pour la plupart des SPA. Ne l'augmentez que pour les backends particulièrement lents.
- Utilisez
singlepar défaut et ne passez àbrowserque si le contenu est absent de la réponse.
Et ensuite ?
Nous travaillons sur d'autres fonctionnalités de navigation, notamment la capture d'écran, la génération de PDF et la navigation multi-étapes (clic, défilement, remplissage de formulaires). Mais même sans ces options, les Browser Tasks résolvent déjà le problème le plus courant : obtenir le contenu réel des pages générées par JavaScript plutôt qu'une structure vide.
Consultez la documentation pour obtenir la comparaison complète des types de tâches.