Este documento descreve como usar a API JSON Custom Search.
Fazer uma solicitação
A REST, ou transferência de estado representacional, na API Custom Search JSON é um pouco diferente das APIs RESTful usuais. Em vez de fornecer acesso a recursos, a API fornece acesso a um serviço. Como resultado, a API fornece um único URI que atua como o endpoint do serviço.
É possível recuperar resultados de uma pesquisa específica enviando uma solicitação HTTP GET
para o URI dela. Você transmite os detalhes da solicitação de pesquisa como parâmetros de
consulta. O formato do URI da API Custom Search JSON é:
https://www.googleapis.com/customsearch/v1?[parameters]
Três [parameters]
de consulta são necessários para cada solicitação de pesquisa:
Chave de API: use o parâmetro de consulta
key
para identificar seu app.- ID do Mecanismo de Pesquisa Programável: use
cx
para especificar o Mecanismo de Pesquisa Programável que você quer usar para realizar essa pesquisa. O mecanismo de pesquisa precisa ser criado com o Painel de controle.Observação: o ID do mecanismo de pesquisa (cx) pode ter um formato diferente (por exemplo, 8ac1ab64606d234f1).
- ID do Mecanismo de Pesquisa Programável: use
Consulta de pesquisa: use o parâmetro de consulta
q
para especificar a expressão de pesquisa.
Todos os outros parâmetros de consulta são opcionais.
Confira um exemplo de solicitação que pesquisa um Mecanismo de Pesquisa Programável de teste para palestras:
GET https://www.googleapis.com/customsearch/v1?key=INSERT_YOUR_API_KEY&cx=017576662512468239146:omuauf_lfve&q=lectures
Parâmetros de consulta
Há dois tipos de parâmetros que podem ser transmitidos na solicitação:
- Parâmetros específicos da API: definem propriedades da pesquisa, como a expressão de pesquisa, o número de resultados, o idioma etc.
- Parâmetros de consulta padrão: definem aspectos técnicos da sua solicitação, como a chave de API.
Todos os valores de parâmetros precisam ser codificados no URL.
Parâmetros de consulta específicos da API
Os parâmetros de solicitação que se aplicam especificamente à API Custom Search JSON e definem sua solicitação de pesquisa estão resumidos na referência.
Parâmetros de consulta padrão
Os parâmetros de consulta que se aplicam a todas as operações da API Custom Search JSON estão documentados em Parâmetros do sistema.
Dados de resposta
Se a solicitação for bem-sucedida, o servidor vai responder com um código de status HTTP 200 OK
e os dados de resposta no formato JSON. É possível consultar a estrutura de dados de resposta
na
referência.
Os dados de resposta são um objeto JSON que inclui três tipos de propriedades:
- Metadados que descrevem a pesquisa solicitada (e, possivelmente, solicitações de pesquisa relacionadas)
- Metadados que descrevem o Mecanismo de Pesquisa Programável
- Resultados da pesquisa
Para uma descrição detalhada de cada propriedade, consulte a referência.
Metadados da solicitação de pesquisa
Os metadados da pesquisa incluem:
- A propriedade
url
, que tem informações sobre o modelo do OpenSearch usado para os resultados retornados nesta solicitação. - Propriedade
queries
, que é uma matriz de objetos que descreve as características de possíveis pesquisas. O nome de cada objeto no array é o nome de um papel de consulta do OpenSearch ou um dos dois papéis personalizados definidos por essa API:previousPage
enextPage
. Os possíveis objetos de função de consulta incluem:request
: metadados que descrevem a consulta para o conjunto de resultados atual.- Esta função está sempre presente na resposta.
- Está sempre na matriz com apenas um elemento.
nextPage
: metadados que descrevem a consulta a ser usada para a próxima página de resultados.- Esta função não está presente na última página de resultados. Observação : essa API retorna apenas os primeiros 100 resultados.
- Quando presente, é sempre uma matriz com apenas um elemento.
previousPage
: metadados que descrevem a consulta a ser usada para a página de resultados anterior.- Não está presente na primeira página de resultados.
- Quando presente, é sempre uma matriz com apenas um elemento.
Metadados do mecanismo de pesquisa
A propriedade context
tem metadados que descrevem o mecanismo de pesquisa que realizou
a consulta. Ele inclui o nome do mecanismo de pesquisa e todos os objetos de faceta que ele fornece para refinar uma pesquisa.
Resultados da pesquisa
A matriz items
contém os resultados reais da pesquisa. Os resultados da pesquisa incluem
o URL, o título e os trechos de texto que descrevem o resultado. Além disso, eles podem
conter informações de snippet enriquecido, se
aplicável.
Se os resultados da pesquisa incluem uma propriedade promotions
, ela contém um conjunto de
promoções.
REST a partir de JavaScript
É possível invocar a API Custom Search JSON usando REST do JavaScript, com o
parâmetro de consulta callback
e uma função de callback. Isso permite criar aplicativos
avançados que mostram dados do Mecanismo de Pesquisa Programável sem escrever
códigos do lado do servidor.
O exemplo a seguir usa essa abordagem para mostrar a primeira página de resultados da pesquisa para a consulta lecture:
<html>
<head>
<title>Custom Search JSON API Example</title>
</head>
<body>
<div id="content"></div>
<p id="demo"></p>
<script>
function hndlr(response) {
if (response.items == null) {
document.getElementById("demo").innerHTML +=`<h3> No Results Found </h3>`;
} else {
for (var i = 1; i < response.items.length; i++) {
var item = response.items[i];
// Make sure HTML in item.htmlTitle is escaped.
document.getElementById("content").append(
document.createElement("br"),
document.createTextNode(item.htmlTitle)
);
}
}
}
</script>
<script src="https://www.googleapis.com/customsearch/v1?key=YOUR-KEY&cx=017576662512468239146:omuauf_lfve&q=lecture&callback=hndlr">
</script>
</body>
</html>