{
"data": [
{
"value": "4010.00",
"raw_text": "4,010.00"
}
],
"validation": {
"status": "ok",
"reason": "no_reference",
"value": 4010,
"model_value": 4010,
"raw_text": "4,010.00",
"reference": null,
"change_pct": null,
"suspect_pct": 10,
"reject_pct": 30,
"on_page": true,
"votes": [],
"mode": "shadow",
"reference_source": null
}
}
curl --location --request GET 'https://zylalabs.com/api/14427/page+and+screenshot+data+api/36435/extract+from+page?url=https://www.investing.com/commodities/gold&parse_description=Current gold futures price as a plain number, in a field called value&expiration_seconds=600&raw_text=true&value_field=value&last_value=4012.5&max_chars=6000' --header 'Authorization: Bearer YOUR_API_KEY'
{
"data": [
{
"value": 4066.5
}
],
"validation": {
"status": "ok",
"reason": "no_reference",
"value": 4066.5,
"model_value": 4066.5,
"raw_text": null,
"suspect_pct": 10,
"reject_pct": 30,
"on_page": null,
"votes": [],
"mode": "shadow"
}
}
curl --location --request GET 'https://zylalabs.com/api/14427/page+and+screenshot+data+api/36436/extract+from+screenshot?expiration_seconds=600&value_field=value&last_value=4012.5&url=https://www.investing.com/commodities/gold&llm_instructions=Current gold price in USD as a number, in a field called value' --header 'Authorization: Bearer YOUR_API_KEY'
Após se cadastrar, cada desenvolvedor recebe uma chave de acesso à API pessoal, uma combinação única de letras e dígitos para acessar nosso endpoint de API. Para autenticar com a Page And Screenshot Data API basta incluir seu token Bearer no cabeçalho Authorization.
| Cabeçalho | Descrição |
|---|---|
Authorization
|
Obrigatório
Deve ser Bearer access_key. Veja "Sua chave de acesso à API" acima quando você estiver inscrito.
|
Sem compromisso de longo prazo. Faça upgrade, downgrade ou cancele a qualquer momento.
(Economize 2 meses com cobrança anual 🎉)
Page And Screenshot Data API turns any public web page into structured JSON. Send a URL and say in plain language what you need, for example current gold futures price as a number, in a field called value. The service fetches the page, prunes it, asks a large language model for exactly those fields and returns them as JSON.
Language models misread pages: they drop a decimal point (27015 instead of 270.15), pick a neighbouring row, or echo a number from the instruction. Every numeric answer is therefore checked before it is returned:
last_value if you send yours).The result comes in a validation object: status (ok, suspect, rejected or unchecked), reason, raw_text exactly as written on the page, on_page, and the thresholds used. The check is informational: you always receive the answer and decide what to do with it. The same pipeline runs in production on hundreds of thousands of extractions per month for commodity, metal and index prices.
Both accept an optional cache window (expiration_seconds, default 10 minutes), your own reference value (last_value) and the name of the field that holds the number when the answer has several (value_field).
Request: the URL of a gold futures quote page and parse_description=Current gold futures price as a plain number, in a field called value
{
"data": [{ "value": "4010.00", "raw_text": "4,010.00" }],
"validation": {
"status": "ok", "reason": "no_reference",
"value": 4010.0, "raw_text": "4,010.00", "on_page": true,
"suspect_pct": 10.0, "reject_pct": 30.0
}
}
Name the fields you want back and be specific about which number: "the Last Price in the quote header, keeping its decimal point, in a field called value" works better than "the price". Do not put example numbers or ranges in the instruction: if the data is missing, a model tends to return the example.
Um objeto JSON com duas partes: dados, os campos que você solicitou em sua instrução, e validação, uma verificação do valor numérico principal (status ok, suspeito, rejeitado ou não verificado, a razão, o texto bruto como escrito na página e os limites usados)
Em linguagem simples, através de parse_description (endpoint de texto) ou llm_instructions (endpoint de captura de tela). Nomeie os campos que você deseja de volta, por exemplo "nome do produto, preço em USD como número e disponibilidade, em campos chamados nome, preço e em_estoque"
Use Extrair da Página por padrão é mais rápido e funciona no texto da página Mude para Extrair da Captura de Tela quando os dados aparecem apenas uma vez que a página é renderizada como gráficos widgets tabelas em canvas ou aplicativos pesados em JavaScript
Se o número está realmente escrito na página (on_page), se parece com um deslocamento decimal (x10, x100) e quão longe se moveu do último valor aceito para a mesma URL e instrução Você sempre recebe a resposta; o status diz o quanto confiar nela
Sim Envie last_value com o último número que você armazenou para essa URL e instrução e a validação compara com ele em vez do histórico de serviços Use value_field quando sua resposta tiver vários números
Não A página e a resposta são reutilizadas para a mesma URL e instrução enquanto forem mais jovens que expiration_seconds padrão 600 segundos Envie 0 para forçar uma nova busca
Extração da Página lê o texto renderizado pelo servidor Para conteúdo que aparece apenas após a página executar seus scripts, use Extração da Captura de Tela, que renderiza a página em um navegador antes de lê-la
A resposta vem com erro verdadeiro e uma mensagem descrevendo o problema (página bloqueada, timeout, erro de upstream) A chamada não é contada como bem-sucedida
Ambos os endpoints retornam dados JSON estruturados O endpoint Extrair da Página fornece campos com base no texto HTML da página enquanto o Extrair da Captura de Tela retorna dados do conteúdo renderizado como gráficos ou widgets Cada resposta inclui um bloco de validação com um status para o valor numérico
Os campos-chave nos dados de resposta incluem "value," que contém os dados numéricos extraídos, e "raw_text," que mostra o texto original da página. O bloco de validação inclui "status," "reason," e "on_page." O status marca a confiança. O valor extraído é sempre retornado
Os dados da resposta estão organizados em duas seções principais: "dados" e "validação" A seção "dados" contém os campos extraídos enquanto a seção "validação" inclui o status e os motivos para qualquer discrepância
O Extrair da Página é adequado para dados baseados em texto como preços e especificações enquanto o Extrair da Captura de Tela é projetado para dados visuais que requerem renderização como gráficos e conteúdo dinâmico Ambas as interfaces podem extrair vários tipos de informações com base nas instruções do usuário
Os usuários podem personalizar solicitações especificando o "parse_description" para Extrair da Página ou "llm_instructions" para Extrair da Captura de Tela. Eles podem definir os campos que desejam extrair e fornecer um "last_value", o número anterior com o qual o status é comparado
Os dados são obtidos de páginas da web publicamente acessíveis A API busca o conteúdo diretamente da URL especificada A validação adiciona um status Não altera o valor extraído
Uma camada de validação verifica os valores numéricos extraídos em relação ao texto da página, valores históricos e possíveis deslocamentos decimais O valor extraído é sempre retornado O status marca a confiança nesse valor
Os casos de uso típicos incluem monitoramento de preços para commodities análise de concorrentes extração de especificações de produtos e fornecimento de dados em tempo real para sistemas de IA A API é particularmente útil para cenários onde a extração de dados precisa se adaptar a mudanças no design da página da web