← Volver a recetas

Poner URL en cola y procesarlas

Añade URL a una cola del espacio de trabajo, extrae cada elemento y confirma el trabajo completado.

Colas y procesos de trabajo Intermedio JavaScript queue_and_process.js

Requisitos previos

  • Un espacio de trabajo de Guida abierto

Resultado esperado

Guida encola tres registros de URL, los procesa uno por uno y los elimina de la cola.

Ejemplo de código fuente

queue_and_process.js

Use colas cuando quiera una lista duradera de elementos de trabajo con extracción y confirmación explícitas.

// Cola y proceso - Usar colas de trabajo para tareas por lotes
//
// Las colas permiten alinear elementos para procesarlos, con logica
// integrada de reintento y manejo de cola de rechazos. Son utiles para
// rastrear listas de paginas o procesar datos en orden.
// Requiere un espacio de trabajo abierto.
const queueName = "pages_to_visit";
// Encolar varios elementos
const urls = [
"https://example.com/page1",
"https://example.com/page2",
"https://example.com/page3"
];
for (const url of urls) {
g.queue.enqueue(queueName, {
url: url,
addedAt: new Date().toISOString()
});
}
g.log("Encolados " + urls.length + " elementos");
// Comprobar tamano de cola
const count = g.queue.count(queueName);
g.log("La cola tiene " + count + " elemento(s)");
// Extraer y procesar cada elemento
let processed = 0;
while (true) {
const item = g.queue.dequeue(queueName);
if (!item) break;
g.log("Procesando: " + item.data.url);
// Haga aqui su trabajo (navegar, extraer, etc.)
// ...
// Confirmar para eliminar de la cola, o abortar para reintentar despues
g.queue.commit(item.id);
processed++;
}
g.log("Procesados " + processed + " elemento(s)");