System und Automatisierung
Diese Seite fasst APIs zusammen, die nicht nur eine einzelne Seite steuern, sondern Arbeitsbereichsautomatisierung, Worker, Ereignisse und Netzwerkzustand betreffen.
g.workers.*
Abschnitt betitelt „g.workers.*“g.workers.* startet und steuert Worker-Pools, die Queue-Items parallel in Browser-Tabs verarbeiten.
| Methode | Zweck |
|---|---|
g.workers.start(config) | Worker-Pools starten |
g.workers.stop(queue?) | Alle oder ausgewählte Worker stoppen |
g.workers.pause() | Entnahmen pausieren |
g.workers.resume() | Entnahmen fortsetzen |
g.workers.status() | Pool-Zustand lesen |
g.workers.start({ clearTabs: true, layout: "quad", workers: [ { queue: "pages", script: "scripts/scrape-page.js", concurrency: 4 } ]});Siehe Warteschlangen-Worker für Betrieb, Fehlerverhalten und Workflow-Umschläge.
g.worker.getContext()
Abschnitt betitelt „g.worker.getContext()“Worker- und Review-Skripte lesen ihr aktuelles Queue-Item über g.worker.getContext().
// @require-contextasync function main() { const ctx = g.worker.getContext(); const { item, tabId } = ctx;
await g.nav.navigateToUrl(item.data.url, { browserTabId: tabId }); await g.dom.waitForDomStable({ browserTabId: tabId });
g.queue.commit(item.checkoutId);}Setzen Sie // @require-context, damit ein Skript außerhalb eines Worker- oder Review-Kontexts sofort mit einer klaren Meldung fehlschlägt.
g.workflows.*
Abschnitt betitelt „g.workflows.*“g.workflows.* listet, prüft und wechselt Workflows im aktuellen Arbeitsbereich.
const workflows = g.workflows.list();for (const workflow of workflows) { g.log(workflow.name);}
g.workflows.switch("careers-crawl");Workflow-Wechsel aktivieren workflow-spezifische Trigger, Worker, Werkzeuge und Ansichten. Details stehen unter Workflows.
Ereignisauslöser
Abschnitt betitelt „Ereignisauslöser“Skripte, die durch events.json gestartet werden, können Kontext über g.trigger.getContext() lesen:
async function main() { const ctx = g.trigger.getContext(); g.log("Event: " + ctx.event); g.log("URL: " + ctx.url);}Typische Trigger sind url-match, page-loaded, tab-created, tab-closed, tab-activated, dom-mutation und external-queue.
Netzwerkhistorie
Abschnitt betitelt „Netzwerkhistorie“Guida kann Netzwerkverkehr beobachten und daraus in Skripten oder Panels lesen. Das ist nützlich, wenn eine Seite Daten über JSON-Endpunkte lädt oder wenn eine Automatisierung auf eine bestimmte Anfrage warten muss.
| Methode | Zweck |
|---|---|
g.network.search(options?) | Erfasste Netzwerkereignisse durchsuchen |
g.network.getById(id) | Detail zu einer Anfrage lesen |
g.network.getResponseBody(id) | Antwortbody lesen, wenn verfügbar |
g.network.waitForRequest(pattern, options?) | Auf passende Anfrage warten |
HTTP-Interception
Abschnitt betitelt „HTTP-Interception“g.intercept.* steuert das Pausieren, Blockieren, Mocken und Skripten von HTTP-Anfragen. Es ist die programmatische Entsprechung zum HTTP-Interception-Panel.
g.intercept.enable();g.intercept.addRule("https://tracking.example.com/*", { action: "block" });
await g.nav.navigateToUrl("https://example.com");
g.intercept.clearRules();g.intercept.disable();Task- und Betriebsbezug
Abschnitt betitelt „Task- und Betriebsbezug“Laufende Skripte, Worker und MCP-Aufrufe erscheinen im Task-Manager. Für externe schreibgeschützte Beobachtung verwenden Sie die Betriebsdashboard-API. Für explizite Remote-Steuerung verwenden Sie Remote Ops.
Nächste Schritte
Abschnitt betitelt „Nächste Schritte“- Warteschlangen und Prüfung - Queue-Items betreiben und prüfen
- Workflows - Automatisierung in Workflow-Ordnern organisieren
- HTTP-Interception - Anfragen pausieren und verändern
- Betriebsdashboard-API - Zustand schreibgeschützt überwachen