Automatisation sans framework avec Bot Script
Utilisez le flag --bot-script de BotBrowser pour une automatisation legere du navigateur via Chrome DevTools Protocol, sans dependances externes.
Qu'est-ce que Bot Script ?
BotBrowser inclut un mode d'automatisation integre via --bot-script. Il execute un fichier JavaScript dans un contexte privilegie du navigateur avec un acces complet a l'API chrome.debugger. Pas besoin de Playwright, Puppeteer ou Node.js.
Comment ca fonctionne
En passant --bot-script=votre-script.js, BotBrowser charge le fichier dans un contexte privilegie au demarrage. Vous obtenez :
- Acces complet a l'API
chrome.debuggerpour envoyer des commandes CDP directement. - Aucun artefact de framework dans le contexte de la page.
- Execution precoce avant la fin de la premiere navigation.
- APIs standard du navigateur :
console,setTimeout,fetchet plus.
Demarrage rapide
Creez my-script.js :
chrome.debugger.getTargets(function (targets) {
const page = targets.find((t) => t.type === "page");
if (!page) return;
chrome.debugger.attach({ targetId: page.id }, "1.3", function () {
if (chrome.runtime.lastError) {
console.log("Attach failed:", chrome.runtime.lastError.message);
return;
}
chrome.debugger.sendCommand(
{ targetId: page.id },
"Page.navigate",
{ url: "https://example.com" },
function () {
console.log("Navigation started.");
}
);
});
});
Lancez BotBrowser avec votre profil et script :
chromium-browser \
--bot-profile="/path/to/profile.enc" \
--bot-script="/path/to/my-script.js"
Bot Script vs Playwright/Puppeteer
| Bot Script | Playwright / Puppeteer | |
|---|---|---|
| Dependances | Aucune | Node.js + packages npm |
| Style d'API | Callbacks chrome.debugger | Base sur les Promises, selecteurs haut niveau |
| Temps de setup | Instantane | Necessite installation et configuration |
| Ideal pour | Taches legeres sur une page | Workflows complexes multi-etapes |
Depannage
"chrome.debugger API not available" : Assurez-vous d'utiliser le flag --bot-script.
Le script ne s'execute pas : Utilisez un chemin absolu pour --bot-script.
Echec d'attach : Une autre session de debogage peut etre connectee. Appelez chrome.debugger.detach() d'abord.