Documentation has been updated: see help center and changelog in one place.

Scheduler

Automatiza trabajos de scraping recurrentes con el Scheduler gratuito en Web Scraper API. Configura la frecuencia con cron, especifica elementos del trabajo y hora de fin, y monitorea ejecuciones vía endpoints dedicados.

Programador es un función gratuita de Web Scraper API que te permite automatizar trabajos recurrentes de scraping y análisis creando programaciones.

Mira el tutorial en vídeo abajo para saber más sobre Scheduler y cómo funciona.

Guía paso a paso para automatizar tus trabajos recurrentes de scraping usando Scheduler

Recomendamos usar Scheduler junto con la función Upload to Cloud Storage De este modo, puedes configurar tu programación y recibir actualizaciones regulares de datos en tu almacenamiento sin intentar obtener resultados desde nuestro sistema.

Inicio rápido

Al crear una nueva programación, sigue los pasos simples a continuación.

  1. Dinos con qué frecuencia debemos repetir los trabajos enviando una expresión de programación cron;

  2. Danos un conjunto de parámetros de trabajo que debemos ejecutar en los momentos programados;

  3. Haznos saber cuándo detenernos enviando una hora de finalización.

Consulta aquí para encontrar un ejemplo de código para enviar una nueva programación.

NOTA: También puedes descargar e importar esta colección de Postman para probar todos nuestros endpoints de Scheduler. ¿Nuevo en Postman? Aprende más sobre esta herramienta aquí.

Endpoints

Scheduler tiene varios endpoints que puedes usar para controlar el servicio:

Crear una nueva programación

Resumen

Usa este endpoint para iniciar una nueva programación.

  • Endpoint: https://data.oxylabs.io/v1/schedules

  • Método: POST

  • sección de Autenticación: Básico

  • Encabezados de la solicitud: Content-Type: application/json

Entrada

Parámetro
Descripción
Valor predeterminado

cron

Expresión de programación Cron. Determina con qué frecuencia se ejecutará la programación enviada. Lee más aquí y aquí.

-

items

Lista de conjuntos de parámetros de trabajo de Scraper APIs que deben ejecutarse como parte de la programación.

-

end_time

La hora en la que la programación debe dejar de ejecutarse. NB: la hora de finalización es inclusiva.

-

- parámetro obligatorio

NOTA: Para obtener orientación sobre cómo elaborar conjuntos de parámetros de trabajo para la items parte de tu payload de Scheduler, consulta la página de documentación del scraper particular que te gustaría usar (p. ej., Google, Amazon, etc.).

El payload a continuación hará que Scheduler ejecute dos trabajos programados a las 03:00 los lunes hasta end_time (inclusive).

Salida

La respuesta a continuación confirma que la programación se creó con éxito.

Obtener todas las programaciones

Resumen

Usa este endpoint para obtener la lista de todas las programaciones asociadas con tu cuenta de usuario.

  • Endpoint: https://data.oxylabs.io/v1/schedules

  • Método: GET

  • sección de Autenticación: Básico

Salida

Este endpoint devuelve la lista de todos los IDs de programación asociados con la cuenta de usuario que realiza la solicitud.

Consulta la respuesta de ejemplo a continuación.

Obtener información de ejecuciones

Resumen

Usa este endpoint para obtener información sobre la lista de todas las ejecuciones en una programación con los metadatos de cada trabajo y la tasa de éxito de cada ejecución.

  • Endpoint: https://data.oxylabs.io/v1/schedules/{id}/runs

  • Método: GET

  • sección de Autenticación: Básico

Salida

El payload a continuación contiene una respuesta de ejemplo del endpoint /runs .

Clave
Descripción
Tipo

ejecuciones

Una colección de objetos run que representan instancias de ejecución de una tarea o flujo de trabajo programado.

Arreglo

ejecuciones:run_id

Un identificador único para la instancia de ejecución específica.

Integer

ejecuciones:jobs

Una colección de objetos job que se ejecutaron como parte de esta ejecución.

Arreglo

ejecuciones:success_rate

La proporción de trabajos exitosos respecto al total de trabajos en esta ejecución (varía de 0 a 1).

Número

ejecuciones:jobs:id

Un identificador único de Oxylabs para el trabajo específico.

Integer

ejecuciones:jobs:create_status_code

Código de estado HTTP devuelto cuando se creó el trabajo, indicando la aceptación inicial de la solicitud del trabajo.

Integer

ejecuciones:jobs:result_status

El estado de ejecución del trabajo (p. ej., "done", "failed", "pending").

String

ejecuciones:jobs:created_at

Marca de tiempo cuando se creó el trabajo

String

ejecuciones:jobs:result_created_at

Marca de tiempo cuando el trabajo se completó y produjo un resultado

String

Obtener trabajos programados

Resumen

Usa este endpoint para obtener la lista de trabajos de scraping ejecutados como resultado de la ejecución de una programación.

  • Endpoint: https://data.oxylabs.io/v1/schedules/{id}/jobs

  • Método: GET

  • sección de Autenticación: Básico

Salida

El payload a continuación contiene una respuesta de información de programación de ejemplo.

Obtener información de la programación

Resumen

Usa este endpoint para obtener información sobre una programación específica.

  • Endpoint: https://data.oxylabs.io/v1/schedules/{id}

  • Método: GET

  • sección de Autenticación: Básico

Salida

El payload a continuación contiene una respuesta de información de programación de ejemplo.

Clave
Descripción
Tipo

schedule_id

El ID único de la programación.

Integer

active

¿Está la programación activa ahora mismo?

Booleano

items_count

El número de elementos (trabajos) en la programación.

Integer

cron

La expresión cron asociada con la programación.

String

end_time

La hora en la que la programación dejará de repetirse.

String

next_run_at

La hora en la que la programación se ejecutará a continuación.

String

enlaces

Una colección de objetos enlace que definen los endpoints de API disponibles relacionados con un recurso de programación.

Arreglo

enlaces:rel

El identificador de relación que explica el propósito del enlace en relación con el recurso principal.

String

enlaces:href

La ruta URL al endpoint de la API. Representa la ubicación del recurso que se puede acceder.

String

enlaces:method

El método HTTP que se debe usar al acceder a este endpoint.

String

stats

Contiene estadísticas de creación y finalización de trabajos.

Objeto JSON

stats:total_job_count

El número de elementos (trabajos) en la programación.

Integer

stats:job_create_outcomes

Contiene estadísticas de creación de trabajos.

Array JSON

stats:job_create_outcomes:status_code

El código de estado recibido en respuesta a un intento de ejecutar la programación (crear un trabajo de scraping/análisis).

Integer

stats:job_create_outcomes:job_count

El número de intentos de creación de trabajos que resultaron en ese código de estado particular.

Integer

stats:job_create_outcomes:ratio

La proporción entre el número de intentos de creación de trabajos que resultaron en ese intento particular y el número total de intentos de creación de trabajos.

Float

job_result_outcomes

Contiene las estadísticas de resultados de los trabajos de scraping/análisis ejecutados como parte de la programación.

Array JSON

status

El estado del trabajo. Valores posibles: pending (el trabajo todavía se está procesando), done (el trabajo se ha completado con éxito), faulted (el trabajo ha fallado).

String

job_count

El número de trabajos que resultaron en ese particular status.

Integer

ratio

La proporción entre el número de trabajos con ese estado en particular y el número total de trabajos creados.

Float

Desactivar o reactivar una programación

Resumen

Usa este endpoint para activar o desactivar una programación en particular.

  • Endpoint: https://data.oxylabs.io/v1/schedules/{id}/state

  • Método: PUT

  • sección de Autenticación: Básico

Entrada

Usa este endpoint para detener o reiniciar una programación.

Al establecer active a false, puedes detener la ejecución de una programación en particular.

Si estableces active a true, puedes reactivar una programación previamente detenida.

Salida

La respuesta estándar es un cuerpo de respuesta vacío con un 202 código de estado.

Códigos de respuesta de la API

Para los códigos de respuesta de la API, consulta API sección.

Última actualización

¿Te fue útil?