Scheduler

Automatize jobs de scraping recorrentes com o Scheduler gratuito na Web Scraper API. Defina frequência com cron, especifique itens & horário de término do job e monitore execuções via endpoints dedicados.

Agendadorarrow-up-right é um recurso gratuito da Web Scraper API que permite automatizar tarefas recorrentes de scraping e parsing criando agendamentos.

Assista ao tutorial em vídeo abaixo para saber mais sobre o Agendador e como ele funciona.

Guia passo a passo para automatizar suas tarefas de scraping recorrentes usando o Agendador

Recomendamos usar o Agendador junto com o Enviar para o Armazenamento em Nuvem recurso. Desta forma, você pode configurar seu agendamento e receber atualizações regulares de dados no seu armazenamento sem tentar buscar resultados no nosso sistema.

circle-exclamation

Início Rápido

Ao criar um novo agendamento, siga os passos simples abaixo.

  1. Diga-nos com que frequência devemos repetir os trabalhos enviando uma expressão de agendamento cron;

  2. Forneça um conjunto de parâmetros de trabalho que devemos executar em horários agendados;

  3. Informe-nos quando parar enviando um horário de término.

Veja aqui para encontrar um exemplo de código para enviar um novo agendamento.

circle-info

OBSERVAÇÃO: Você também pode baixar e importar esta coleção do Postmanarrow-up-right para testar todos os nossos endpoints do Agendador. Novo no Postman? Saiba mais sobre essa ferramenta aqui.

Endpoints

O Agendador possui vários endpoints que você pode usar para controlar o serviço:

Criar um novo agendamento

Visão geral

Use este endpoint para iniciar um novo agendamento.

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

  • Method: POST

  • Autenticação: Basic

  • Cabeçalhos da requisição: Content-Type: application/json

Entrada

Parâmetro
Descrição
Valor padrão

cron

Expressão de agendamento cron. Determina com que frequência o agendamento enviado será executado. Leia mais aquiarrow-up-right e aquiarrow-up-right.

-

items

Lista de conjuntos de parâmetros de trabalho da Scraper APIs que devem ser executados como parte do agendamento.

-

end_time

O horário em que o agendamento deve parar de ser executado. NB: o horário de término é inclusivo.

-

- parâmetro obrigatório

circle-info

OBSERVAÇÃO: Para orientações sobre como montar conjuntos de parâmetros de trabalho para a items parte do seu payload do Agendador, consulte a página de documentação do scraper específico que você gostaria de usar (por exemplo, Google, Amazon, etc.).

O payload abaixo fará com que o Agendador execute dois trabalhos agendados às 03:00 às segundas-feiras até end_time (inclusivo).

Saída

A resposta abaixo confirma que o agendamento foi criado com sucesso.

Obter todos os agendamentos

Visão geral

Use este endpoint para obter a lista de todos os agendamentos associados à sua conta de usuário.

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

  • Method: GET

  • Autenticação: Basic

Saída

Este endpoint retorna a lista de todos os IDs de agendamento associados à conta de usuário que fez a requisição.

Veja a resposta de exemplo abaixo.

Obter informações das execuções

Visão geral

Use este endpoint para obter informações sobre a lista de todas as execuções em um agendamento com os metadados de cada trabalho e a taxa de sucesso de cada execução.

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

  • Method: GET

  • Autenticação: Basic

Saída

O payload abaixo contém uma resposta de exemplo do /runs endpoint.

Chave
Descrição
Tipo

execuções

Uma coleção de objetos de execução que representam instâncias de execução de uma tarefa ou fluxo de trabalho agendado.

Array

execuções:run_id

Um identificador único para a instância específica de execução.

Integer

execuções:jobs

Uma coleção de objetos de trabalho que foram executados como parte desta execução.

Array

execuções:success_rate

A proporção de trabalhos bem-sucedidos em relação ao total de trabalhos nesta execução (varia de 0 a 1).

Número

execuções:jobs:id

Um identificador exclusivo da Oxylabs para o trabalho específico.

Integer

execuções:jobs:create_status_code

Código de status HTTP retornado quando o trabalho foi criado, indicando a aceitação inicial da requisição do trabalho.

Integer

execuções:jobs:result_status

O status de execução do trabalho (por exemplo, "done", "failed", "pending").

String

execuções:jobs:created_at

Timestamp quando o trabalho foi criado

String

execuções:jobs:result_created_at

Timestamp quando o trabalho foi concluído e produziu um resultado

String

Obter trabalhos agendados

Visão geral

Use este endpoint para obter a lista de trabalhos de scraping executados como resultado da execução de um agendamento.

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

  • Method: GET

  • Autenticação: Basic

Saída

O payload abaixo contém uma resposta de exemplo de informações do agendamento.

Obter informações do agendamento

Visão geral

Use este endpoint para obter informações sobre um agendamento específico.

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

  • Method: GET

  • Autenticação: Basic

Saída

O payload abaixo contém uma resposta de exemplo de informações do agendamento.

Chave
Descrição
Tipo

schedule_id

O ID único do agendamento.

Integer

active

O agendamento está ativo agora?

Boolean

items_count

O número de itens (trabalhos) no agendamento.

Integer

cron

A expressão cron associada ao agendamento.

String

end_time

O horário em que o agendamento deixará de ser repetido.

String

next_run_at

O horário em que o agendamento será executado em seguida.

String

links

Uma coleção de objetos de link que definem endpoints de API disponíveis relacionados a um recurso de agendamento.

Array

links:rel

O identificador de relacionamento que explica a finalidade do link em relação ao recurso pai.

String

links:href

O caminho URL para o endpoint da API. Representa a localização do recurso que pode ser acessado.

String

links:method

O método HTTP a ser usado ao acessar este endpoint.

String

stats

Contém estatísticas de criação e conclusão de trabalhos.

JSON Object

stats:total_job_count

O número de itens (trabalhos) no agendamento.

Integer

stats:job_create_outcomes

Contém estatísticas de criação de trabalhos.

JSON Array

stats:job_create_outcomes:status_code

O código de status recebido em resposta a uma tentativa de executar o agendamento (criar um trabalho de scraping/parsing).

Integer

stats:job_create_outcomes:job_count

O número de tentativas de criação de trabalho que resultaram naquele código de status específico.

Integer

stats:job_create_outcomes:ratio

A proporção entre o número de tentativas de criação de trabalho que resultaram naquele status específico e o número total de tentativas de criação de trabalho.

Float

job_result_outcomes

Contém as estatísticas de resultado dos trabalhos de scraping/parsing executados como parte do agendamento.

JSON Array

status

O status do trabalho. Valores possíveis: pending (o trabalho ainda está sendo processado), done (o trabalho foi concluído com sucesso), faulted (o trabalho falhou).

String

job_count

O número de trabalhos que resultaram naquele status.

Integer

ratio

A proporção entre o número de trabalhos com aquele status específico e o número total de trabalhos criados.

Float

Desativar ou reativar um agendamento

Visão geral

Use este endpoint para ativar ou desativar um agendamento específico.

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

  • Method: PUT

  • Autenticação: Basic

Entrada

Use este endpoint para parar ou reiniciar um agendamento.

Ao definir active para false, você pode parar a execução de um agendamento específico.

Se você definir active para true, você pode reativar um agendamento previamente parado.

Saída

A resposta padrão é um corpo de resposta vazio com um 202 código de status.

Códigos de resposta da API

Para códigos de resposta da API, consulte API seção.

Atualizado

Isto foi útil?