Começando

Aprenda a usar o Oxylabs Custom Parser. Nesta página, você encontrará exemplos completos, dicas e detalhes sobre o que acontece se a análise falhar.

Como usar o Custom Parser

Exemplo de cenário

Suponha que você queira analisar o número total de resultados que o Bing Search retorna com um termo de busca test:

Vamos apresentar os três principais métodos para alcançar esse objetivo:

Gerar parsers com OxyCopilot

O OxyCopilot permite que você descreva suas necessidades em inglês simples para criar automaticamente scrapers e parsers para um site. Aprenda o básico seguindo os passos abaixo e confira a documentação do OxyCopilot para mais informações.

1

Insira a(s) URL(s)

Clique no botão do OxyCopilot no canto superior esquerdo e insira até 3 URLs do mesmo tipo de página. Vamos usar esta URL do Bing Search: https://www.bing.com/search?q=test.

Você também pode configurar o scraper manualmente preenchendo os Site, campos do Scraper, e URL na parte superior e ajustando parâmetros adicionais como a renderização JavaScript no menu à esquerda.

2

Configure os parâmetros do scraper

Em seguida, especifique os parâmetros do scraper, as instruções do navegador e ative a renderização JavaScript se o site de destino exigir isso.

Para o Bing Search, ative a renderização JavaScript e depois clique em Próximo.

3

Escreva o prompt

Explique os dados que você quer extrair de uma página. Certifique-se de ser descritivo e fornecer as informações mais importantes. Você pode encontrar exemplos de prompts para sites populares na nossa biblioteca de prompts do OxyCopilot.

Cole o prompt a seguir para extrair o número total de resultados das páginas do Bing Search:

Clique no Gerar instruções botão para enviar seu prompt.

4

Revise os dados analisados e as instruções

Quando o OxyCopilot terminar, você verá a janela a seguir, onde os dados analisados ficam no lado direito:

Se quiser fazer algum ajuste, você pode fazer isso aqui. Modifique a(s) URL(s), refine o prompt, ative a renderização JavaScript ou edite o esquema de parsing conforme suas necessidades. Quando você atualizar quaisquer campos nesta janela, você pode executar a solicitação novamente selecionando Iniciar nova solicitação.

Você também pode ver e editar diretamente as instruções de parsing aqui:

Quando estiver satisfeito com o resultado, Carregar instruções para continuar.

5

Salve o parser como predefinição

Você pode salvar facilmente suas instruções de parsing como uma preset do parser. Isso permite reutilizar a predefinição no OxyCopilot e nas suas solicitações de API.

No Playground da Web Scraper API, você pode opcionalmente escolher o usuário para o qual salvar a predefinição. Quando estiver tudo pronto, basta clicar em Salvar:

Um pop-up aparecerá pedindo que você nomeie a predefinição e adicione uma descrição opcional:

6

Use a predefinição com solicitações de API

Para usar uma predefinição com suas solicitações da Web Scraper API, defina parse até true e especifique o nome da predefinição com o parser_preset parâmetro.

Endpoint: POST https://data.oxylabs.io/v1/queries

Executar a solicitação fornecerá a seguinte saída JSON:

Uso avançado

Gerar parsers via API

Em vez de usar o OxyCopilot no playground, você pode enviar prompts diretamente para a Web Scraper API e gerar parsers. Veja a página de documentação Gerando instruções de parsing via API para saber mais.

Endpoint: POST https://data.oxylabs.io/v1/parsers/generate-instructions/prompt

Saída

Salvar predefinições de parser via API

A Web Scraper API permite salvar instruções de parsing como predefinições de parser reutilizáveis. Confira a Predefinições de Parser documentação para encontrar uma lista de ações disponíveis e exemplos de código completos.

Endpoint: POST https://data.oxylabs.io/v1/parsers/presets

Saída

Escreva instruções manualmente

Para usar o Custom Parser manualmente, inclua um conjunto de parsing_instructions ao criar uma tarefa. Você pode usar seletores CSS e XPath para direcionar elementos no DOM.

Siga o exemplo passo a passo abaixo para aprender o básico e depois explore nosso guia detalhado sobre escrever instruções manualmente para técnicas avançadas e documentação detalhada.

Vamos usar o cenário do Bing Search como exemplo. Os parâmetros da tarefa ficariam assim:

Etapa 1. Você deve fornecer o "parse": true parâmetro.

Etapa 2. As instruções de parsing devem ser descritas em "parsing_instructions" .

As instruções de parsing de exemplo acima especificam que o objetivo é analisar o número de resultados de busca do documento raspado e colocar o resultado no campo number_of_results . As instruções sobre como analisar o campo definindo um “pipeline” são dadas como:

O pipeline descreve uma lista de funções de processamento de dados a serem executadas. As funções são executadas na ordem em que aparecem na lista e usam a saída da função anterior como entrada.

No pipeline de exemplo acima, a xpath_one função (lista completa de funções disponíveis) é usada. Ela permite processar um documento HTML usando expressões XPath e funções XSLT. Como argumento da função, especifique o caminho exato onde o elemento de destino pode ser encontrado: .//span[@class='sb_count']. Você também pode instruir o parser a selecionar o text() encontrado no elemento de destino.

O resultado analisado da tarefa de exemplo acima deve ficar assim:

O Custom Parser não só oferece extração de texto de um HTML raspado, mas também pode executar funções básicas de processamento de dados.

Por exemplo, as instruções de parsing descritas anteriormente extraem number_of_results como texto com palavras-chave extras de que você talvez não precise necessariamente. Se você quiser obter o número de resultados para a query=test dada no tipo de dado numérico, você pode reutilizar as mesmas instruções de parsing e adicionar a amount_from_string função ao pipeline existente:

O resultado analisado da tarefa de exemplo acima deve ficar assim:

O que acontece se o parsing falhar ao usar o Custom Parser

Se o Custom Parser não conseguir processar as instruções de parsing definidas pelo cliente, retornaremos o 12005 código de status (analisado com avisos).

Você será cobrado por esses resultados:

Se o Custom Parser encontrar uma exceção e falhar durante a operação de parsing, ele pode retornar estes códigos de status: 12002, 12006, 12007. Você não será cobrado por esses erros inesperados.

Códigos de status

Veja nossos códigos de status descritos aqui.

Atualizado

Isto foi útil?