Agendador

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

Agendadorarrow-up-right é um recurso gratuito do Web Scraper API que permite automatizar trabalhos recorrentes de scraping e parsing criando cronogramas.

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

Guia passo a passo para automatizar seus trabalhos recorrentes de scraping usando o Agendador

Recomendamos usar o Agendador juntamente com o Upload para Armazenamento em Nuvem recurso. Dessa forma, você pode configurar seu cronograma e receber atualizações regulares de dados no seu armazenamento sem tentar buscar resultados do nosso sistema.

circle-exclamation

Início Rápido

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

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

  2. Forneça-nos 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 cronograma.

circle-info

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

Endpoints

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

Criar um novo cronograma

Visão geral

Use este endpoint para iniciar um novo cronograma.

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

  • Método: 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 cron. Determina com que frequência o cronograma enviado será executado. Leia mais aquiarrow-up-right e aquiarrow-up-right.

-

itens

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

-

end_time

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

-

- parâmetro obrigatório

circle-info

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

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

Saída

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

Obter todos os cronogramas

Visão geral

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

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

  • Método: GET

  • Autenticação: Basic

Saída

Este endpoint retorna a lista de todos os IDs de cronogramas associados à conta de usuário que faz a solicitaçã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 cronograma com os metadados de cada trabalho e a taxa de sucesso de cada execução.

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

  • Método: 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).

Number

execuções:jobs:id

Um identificador único 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 solicitaçã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 cronograma.

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

  • Método: GET

  • Autenticação: Basic

Saída

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

Obter informações do cronograma

Visão geral

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

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

  • Método: GET

  • Autenticação: Basic

Saída

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

Chave
Descrição
Tipo

schedule_id

O ID único do cronograma.

Integer

active

O cronograma está ativo agora?

Boolean

items_count

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

Integer

cron

A expressão cron associada ao cronograma.

String

end_time

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

String

next_run_at

O horário em que o cronograma 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 cronograma.

Array

links:rel

O identificador de relacionamento que explica o propósito 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 acessada.

String

links:método

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

String

stats

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

JSON Object

stats:total_job_count

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

Integer

stats:job_create_outcomes

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

JSON Array

stats:job_create_outcomes:status_code

O código de status recebido em resposta a uma tentativa de executar o cronograma (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 de trabalhos de scraping/parsing executados como parte do cronograma.

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 cronograma

Visão geral

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

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

  • Método: PUT

  • Autenticação: Basic

Entrada

Use este endpoint para parar ou reiniciar um cronograma.

Definindo active to false, você pode interromper a execução de um cronograma específico.

Se você definir active to true, você pode reativar um cronograma previamente interrompido.

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?