Steel - L'API de navigation web pour vos agents IA

par Korben -

La navigation sur le web, c’est un jeu d’enfant pour nous autres les humains, mais ça devient un véritable casse-tête pour les agents IA… Car entre les contenus dynamiques, les popups intempestifs et les systèmes anti-bots, nos amis artificiels se retrouvent souvent démunis.

Mais la donne est sur le point de changer grâce à Steel, une API open-source qui promet de fluidifier la manière dont les agents IA interagissent avec le web.

Pourquoi Steel va vous simplifier la vie ?

Développer des applications IA capables d’interagir avec le web pose de nombreux défis techniques. Y’a d’abord le contenu dynamique qui nécessite l’exécution de JavaScript, ensuite les parcours de navigation complexes impliquant plusieurs étapes, mais également la gestion des authentifications et connexions. Et je ne vous parle pas du contournement des systèmes anti-bots ou encore de l’infrastructure lourde à maintenir pour gérer les navigateurs headless

Steel arrive donc comme le messie dans la soupe ^^ pour résoudre ces problèmes avec une approche totalement repensée, ce qui va vous éviter de bricoler des solutions hasardeuses, comme vous savez si bien les faire !

Les super-pouvoirs de Steel en détail

Une excellente gestion des sessions

Steel gère automatiquement les cookies et le stockage local, l’état du navigateur entre les requêtes, mais également la persistance des connexions ainsi que les processus d’authentification automatiques.

Des capacités d’extraction trop balèzes

Steel transforme les pages web en formats facilement digestibles avec notamment une conversion en Markdown propre et structuré, des capture d’écran haute fidélité, de la génération de PDF et bien sûr une extraction du contenu pertinent optimisée ce qui permet de réduire jusqu’à 80% l’utilisation des tokens.

Des fonctionnalités anti-détection

  • Rotation automatique des proxies
  • Gestion des empreintes digitales
  • Plugins de furtivité intégrés
  • Contournement intelligent des CAPTCHAs

Comment mettre Steel en action ?

Voici les différentes options pour démarrer avec Steel :

Installation via Docker :

git clone https://github.com/steel-dev/steel-browser

cd steel-browser

docker compose up

Installation directe avec Node.js :

npm run install

npm run dev

Les différentes façons d’utiliser Steel

Mode rapide avec l’API Actions

Pour les tâches simples de lecture comme extraire le contenu d’une page :

curl -X POST http://0.0.0.0:3000/v1/scrape \
-H "Content-Type: application/json" \
-d '{
"url": "https://example.com",
"waitFor": 1000
}'

Mode avancé avec les sessions personnalisées

Pour un contrôle total sur votre navigation :

curl -X POST http://0.0.0.0:3000/v1/sessions \
-H "Content-Type: application/json" \
-d '{
"options": {
"proxy": "user:pass@host:port"
}
}'

Compatibilité avec les frameworks existants

Steel s’intègre parfaitement avec Puppeteer afin d’avoir un contrôle précis du navigateur mais également Playwright pour des tests end-to-end robustes ou encore Selenium pour la compatibilité avec les scripts existants

Cas d’utilisation pratiques

Voici quelques idées des trucs que vous allez pouvoir mettre en place avec Steel (et avec style, bien sûr !)

  1. Assistant d’achat automatisé : Créez un agent qui compare les prix, vérifie la disponibilité et effectue des achats sur différentes plateformes.
  2. Agrégateur de contenu intelligent : Développez un système qui collecte et synthétise des informations à partir de multiples sources.
  3. Automatisation des processus métier : Automatisez les tâches répétitives comme la saisie de données ou la génération de rapports.

Astuces pour tirer le meilleur parti de Steel

Optimisez vos sessions

  1. Réutilisez les sessions pour les tâches similaires
  2. Nettoyez régulièrement les sessions inutilisées
  3. Utilisez les timeouts appropriés

Gérez intelligemment les ressources

  1. Limitez le nombre de sessions parallèles
  2. Configurez judicieusement la mémoire allouée
  3. Surveillez la consommation CPU

Maximisez la discrétion

  1. Variez les paramètres de navigation
  2. Utilisez des délais aléatoires
  3. Alternez les proxies régulièrement

Pour aller plus loin

Steel propose des outils de débogage avancés comme un visualiseur de sessions en direct, du replay de sessions et même des embeddings pour l’analyse. De plus, la plateforme est constamment en évolution, avec une communauté active qui contribue à son amélioration alors n’hésitez pas à contribuer sur Github ou Discord.

Voilà, la prochaine fois que vous devrez développer une application IA qui interagit avec le web, au moins, vous saurez quoi utiliser pour éviter les prises de tête habituelles.

En savoir plus sur Steel Browser