Requisição da API
Para fazer scraping de uma página web, envie uma requisição GET para o endpoint base da Web Scraping API com sua api_key e a url de destino. Parâmetros opcionais adicionais permitem controlar renderização, tipo de proxy, geolocalização, timeouts e mais.
Endpoint
Seção intitulada “Endpoint” GET https://scrape.shifter.io/v1?api_key=YOUR_API_KEY&url=<TARGET_URL>
Parâmetros
Seção intitulada “Parâmetros”| Parâmetro | Tipo | Obrigatório | Descrição |
|---|---|---|---|
api_key | string | sim | Sua chave de acesso à Web Scraping API. Encontrada no painel da sua conta. |
url | string | sim | A URL de destino para o scraping. |
render_js | integer | não | 0 (padrão) ou 1. Ativa a renderização de JavaScript via navegador headless. Custa 5 chamadas de API para datacenter e 25 para residencial. |
proxy_type | string | não | datacenter (padrão) ou residential. O residencial custa 10 chamadas sem renderização de JS e 25 com. |
country | string | não | Código de país de 2 letras para geolocalização do proxy. A lista suportada depende do tipo de proxy. |
keep_headers | integer | não | 1 para repassar cabeçalhos de requisição personalizados, 0 para usar apenas os que você especificar. |
session | integer | não | Reutiliza o mesmo IP de proxy em múltiplas requisições ao reutilizar o mesmo número de sessão. Expira 5 minutos após o último uso. |
timeout | integer | não | Tempo máximo de requisição em milissegundos. Máximo 60000. A API retorna o HTML que tiver sido coletado antes de o timeout ser acionado. |
device | string | não | desktop (padrão), mobile ou tablet. |
wait_until | string | não | Avançado. Condição para quando a renderização é considerada concluída. Requer render_js=1. |
wait_for | integer | não | Avançado. Milissegundos a aguardar após o carregamento da página. Recomendado 5000-10000. Requer render_js=1. |
wait_for_css | string | não | Avançado. Aguarda até 10 segundos pelo aparecimento de um seletor CSS. Requer render_js=1. |
screenshot | integer | não | Avançado. Defina como 1 para retornar uma captura de tela. Requer render_js=1. |
screenshot_options | object | não | Avançado. Controla as dimensões da captura de tela e full_page. |
extract_rules | string | não | Avançado. JSON codificado em URL descrevendo regras de extração CSS. |
disable_stealth | integer | não | Avançado. Defina como 1 para desativar o plugin stealth padrão. Requer render_js=1. |
auto_parser | integer | não | Avançado. Defina como 1 para retornar JSON processado em vez de HTML. |
js_instructions | string | não | Avançado. Array JSON codificado em URL com ações a serem executadas antes do scraping. Requer render_js=1. |
binary_response | integer | não | Defina como 1 para retornar um arquivo binário codificado em base64 (para PDFs, imagens etc.). |
Exemplo de requisição
Seção intitulada “Exemplo de requisição”curl "https://scrape.shifter.io/v1?api_key=YOUR_API_KEY&url=https://httpbin.org/get"import requests
r = requests.get("https://scrape.shifter.io/v1", params={ "api_key": "YOUR_API_KEY", "url": "https://httpbin.org/get",})print(r.text)import fetch from 'node-fetch';
const url = 'https://scrape.shifter.io/v1?' + new URLSearchParams({ api_key: 'YOUR_API_KEY', url: 'https://httpbin.org/get',});const res = await fetch(url);console.log(await res.text());Veja também
Seção intitulada “Veja também”- Requisição básica - exemplo mínimo
- Renderização de JavaScript
- Proxies
- Erros da API