Scheduler

Automatiza trabajos de scraping recurrentes con el Scheduler gratuito en Web Scraper API. Establece la frecuencia con cron, especifica elementos del trabajo y hora de finalización, y supervisa ejecuciones mediante endpoints dedicados.

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

Mira el tutorial en video a continuación 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 de carga a almacenamiento en la nube . De esta manera, puedes configurar tu programación y recibir actualizaciones regulares de datos en tu almacenamiento sin intentar obtener resultados de nuestro sistema.

Inicio rápido

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

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

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

  3. Indícanos cuándo detenerlo 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. ¿Eres 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

  • Autenticación: Básico

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

Entrada

Parámetro
Descripción
Valor predeterminado

cron

Expresión cron de programación. Determina con qué frecuencia se ejecutará la programación enviada. Leer 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. Nota: la hora de finalización es inclusiva.

-

- parámetro obligatorio

NOTA: Para obtener orientación sobre cómo preparar conjuntos de parámetros de trabajo para la items parte de tu carga útil de Scheduler, consulta la página de documentación del scraper específico que quieras usar (por ejemplo, Google, Amazon, etc.).

La carga útil 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ó correctamente.

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

  • Autenticación: Básico

Salida

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

Consulta la respuesta de ejemplo a continuación.

Obtener información de las ejecuciones

Resumen

Usa este endpoint para obtener información sobre una lista de todas las ejecuciones de 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

  • Autenticación: Básico

Salida

La carga útil a continuación contiene una respuesta de ejemplo del /runs endpoint.

Clave
Descripción
Tipo

ejecuciones

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

Array

ejecuciones:run_id

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

Entero

ejecuciones:jobs

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

Array

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.

Entero

ejecuciones:jobs:create_status_code

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

Entero

ejecuciones:jobs:result_status

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

Cadena

ejecuciones:jobs:created_at

Marca de tiempo en la que se creó el trabajo

Cadena

ejecuciones:jobs:result_created_at

Marca de tiempo en la que el trabajo se completó y generó un resultado

Cadena

Obtener trabajos programados

Resumen

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

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

  • Método: GET

  • Autenticación: Básico

Salida

La carga útil 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

  • Autenticación: Básico

Salida

La carga útil 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.

Entero

active

¿La programación está activa ahora mismo?

Booleano

items_count

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

Entero

cron

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

Cadena

end_time

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

Cadena

next_run_at

La hora en la que se ejecutará la programación la próxima vez.

Cadena

enlaces

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

Array

enlaces:rel

El identificador de relación que explica el propósito del enlace con respecto al recurso padre.

Cadena

enlaces:href

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

Cadena

enlaces:método

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

Cadena

stats

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

Objeto JSON

stats:total_job_count

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

Entero

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).

Entero

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.

Entero

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 aún se está procesando), done (el trabajo se ha completado correctamente), faulted (el trabajo ha fallado).

Cadena

job_count

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

Entero

ratio

La proporción entre el número de trabajos con ese estado 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 específica.

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

  • Método: PUT

  • 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 específica.

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

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?