API SERP · búsqueda en Google
API de búsqueda de Google para datos de SERP estructurados y contextuales.
Envía una consulta de Google con la ubicación, el dispositivo, la superficie de búsqueda y la ventana de resultados que definen la observación. Reciba el contexto de la solicitud documentada y las colecciones de resultados JSON analizadas que su aplicación del lado del servidor puede evaluar.
GET /v2 · engine=google· Uso en el lado del servidor ·Discuta su flujo de trabajo de datos de búsqueda
- Encuesta específicaCada respuesta comienza con
q - ContextualidadPaís, idioma, ubicación, dispositivo
- Concientes de la superficieWeb, imágenes, videos, noticias, compras, trabajos
- Producción analizadaColecciones de resultados y metadatos de JSON
Cómo elegir un zapato de rastro
mejores zapatos de senderos
G ⌕
domain google
.com gl / hl us / en device mobile start / num 0 / 10
From query to usable objects
Mantenga el contexto de la búsqueda de Google vinculado a los resultados que produjo.
Una observación útil de SERP es más que una lista de enlaces. Define las condiciones de búsqueda de antemano y reténlas con la respuesta analizada para que las comparaciones en el torrente continúen siendo interpretables.
01 · definir
Construir una huella digital precisa de la solicitud
Describa la consulta, el dominio de Google, la ubicación codificada, el idioma de la interfaz, el país, el dispositivo, la superficie y la ventana de resultados requeridos por el flujo de trabajo.
02 · consumir
Trabajo con colecciones analizadas
Lea metadatos documentados y matrices de resultados en lugar de vincular su aplicación a la marca de presentación de una página de búsqueda.
03 · interpretar
Opcionalidad de modelo honestamente
Tratar los módulos de búsqueda como condicionales. Su presencia varía con el contexto de la solicitud y la superficie de Google devuelta para esa observación.
04 · comparar
Mantenga posible el análisis de pareja
Almacenar el contexto de la solicitud junto a los resultados antes de calcular posiciones, cambios, cobertura de editores o señales específicas de productos.
- 01
Pregunta .mejores zapatos de senderos
- 02
DominioGoogle.com
- 03
LocalizaciónU.S. · lugar codificado
- 04
El lenguajeen
- 05
Presentaciónmóvil · web
- 06
VentanaInicio 0 · número 10
- 07
ProducciónMetadatos + colecciones
Superficies de Google documentadas
Seleccione la superficie de búsqueda antes de diseñar el consumidor.
Los resultados web regulares utilizan el motor de Google sin un selector vertical. Los controles documentados amplían el mismo modelo de solicitud a las superficies de medios, comercio y puestos de trabajo.
Superficie por defecto
Buscar en la web
Envíaengine=googley lo requeridoq- ¡ Deje de aquí !tbmno se ha configurado para los resultados de búsqueda regulares de Google.
módulos orgánicos[] + devueltos
Descubrimiento visual
Las imágenes
Configure el selector vertical documentado entbm=isch.
Cuidado con la intención
Los vídeos
Configure el selector vertical documentado entbm=vid.
Cobertura actual
Noticias
Configure el selector vertical documentado entbm=nws.
Descubrimiento del producto
Compras
Configure el selector vertical documentado entbm=shop.
Descubrimiento de roles
Trabajos
Utilice el valor de los puestos de trabajo documentadosibp=htl;jobs.
Fuente de verdad de aplicación
Valida las entradas y módulos devueltos en relación con losDocumentación de la API de búsqueda de Googlecon consultas representativas de su flujo de trabajo previsto.
Control de las solicitudes
Haga que cada observación de Google sea explícita y reproducible.
Comience con el parámetro de consulta requerido. Agregue controles opcionales documentados solo cuando el flujo de trabajo necesita una superficie, presentación, localización o ventana de resultados en particular.
Requerida consulta
q
Las palabras clave para buscar en Google.
cadena · requerida
Superficie de búsqueda
tbm ibp
tbmselecciona imágenes documentadas, videos, noticias o verticales de compras.ibpEl valor de búsqueda de empleo documentado.
cuerdas · opcionales
Presentación
device
Seleccione una presentación de búsqueda de escritorio, móvil o tableta compatible.
cuerdas · opcionales
Host de Google
domain
Seleccione el dominio de Google utilizado para la búsqueda.
cuerdas · opcionales
Localización codificada
uule
Pasar una ubicación codificada de Google para el contexto de búsqueda.
cuerdas · opcionales
Lengua y país
hl gl
hlestablece el lenguaje de interfaz;glproporciona el código de país utilizado para localizar la búsqueda.
cuerdas · opcionales
Ventana de resultados
start num
startes el resultado compensado para saltarse;numsolicita el número de resultados en cada página.
número entero · opcional
Solicitud ilustrativaGET /v2?engine=google&api_key=…&q=best%20trail%20shoes&domain=google.com&gl=us&hl=en&device=mobile&start=0&num=10
Respuesta de Google analizada
Diseño en torno a significados estables y módulos condicionales.
La respuesta documentada contiene metadatos de búsqueda y colecciones de resultados JSON analizados. Los bloques presentes en una respuesta específica dependen de la consulta, el lugar, el dispositivo y la vertical de búsqueda.
01 · context
general
Motor de búsqueda, recuento de resultados, idioma, ubicación, presentación, tipo de búsqueda, título de página y campos de timestamp mostrados por el ejemplo de respuesta documentada.
02 · request trace
input
Solicitar información como la URL original y los campos de agente de usuario mostrados en el ejemplo de respuesta documentada.
03 · discovery paths
navigation
Las entradas de navegación devueltas pueden identificar otras superficies de búsqueda de Google para la consulta.
04 · parsed results
organic[]
Los objetos orgánicos documentados incluyen campos como enlace, enlace de visualización, título, descripción, rango y rango global cuando se devuelven.
respuesta. jsonillustrative
{
"general": {
"search_engine": "google",
"language": "en",
"location": "United States",
"mobile": true
},
"organic": [
{
"rank": 1,
"title": "Trail footwear guide",
"link": "https://example.org/guide"
}
],
"navigation": []
}Regla de opcionalidad
Los módulos de resultados son opcionales. Un bloque faltante es diferente de una solicitud HTTP fallida, y una colección vacía debe interpretarse dentro del contexto exacto de la solicitudno como una ausencia universal.
Una solicitud contextual
Pasar de la intención de búsqueda a JSON validado en tres pasos.
Su aplicación define la observación y consume la respuesta. WebScrapingAPI opera la búsqueda de Google documentada y la trayectoria de análisis entre ellos.
- 01
Enmarque la observación
Seleccione la consulta, la superficie de búsqueda, el dominio de Google, la ubicación codificada, el idioma, el país, el dispositivo y la ventana de página requerida por la decisión.
- 02
Llame al punto final del lado del servidor
Envía una solicitud de GET a
https://serpapi.webscrapingapi.com/v2withapi_key,engine=google, yq. - 03
Validación antes de su uso
Inspeccione el resultado HTTP, analice JSON, lea las colecciones que necesita su flujo de trabajo y preserve el contexto de la solicitud con los resultados almacenados.
Solicitud sincrónica
engine=google
Utilice el camino estándar cuando la aplicación deba esperar la respuesta de Google analizada en curso.
Recuperación en fila
engine=google_async
Envía una búsqueda en Google y recupera la carga útil terminada de SERP más tarde a través de la API Snapshot.
La integración
Comience con una solicitud limitada y consciente de fallas de Google.
Mantenga la clave de API en la configuración del lado del servidor, codifique los valores de la consulta, establezca un tiempo de espera explícito y permita que los resultados HTTP no tengan éxito antes de analizar la respuesta.
Contrato de solicitud
Pruebe el contexto que utilizará su producto.
Los ejemplos envían la misma consulta web representativa de Google con contexto móvil en inglés de EE.UU.
- Punto final
https://serpapi.webscrapingapi.com/v2- Requerido
api_key+engine=google+q- Contexto
gl=us+hl=en+device=mobile- Fronteras
- 120 segundos de tiempo de espera del cliente y manejo explícito de errores HTTP
: "${WSA_API_KEY:?WSA_API_KEY is required}"
curl --get --fail-with-body --max-time 120 \
"https://serpapi.webscrapingapi.com/v2" \
--data-urlencode "api_key=$WSA_API_KEY" \
--data-urlencode "engine=google" \
--data-urlencode "q=best trail shoes" \
--data-urlencode "gl=us" \
--data-urlencode "hl=en" \
--data-urlencode "device=mobile"import os
import requests
api_key = os.environ.get("WSA_API_KEY")
if not api_key:
raise RuntimeError("WSA_API_KEY is required")
response = requests.get(
"https://serpapi.webscrapingapi.com/v2",
params={
"api_key": api_key,
"engine": "google",
"q": "best trail shoes",
"gl": "us",
"hl": "en",
"device": "mobile",
},
timeout=120,
)
response.raise_for_status()
print(response.json())const apiKey = process.env.WSA_API_KEY;
if (!apiKey) throw new Error("WSA_API_KEY is required");
const parameters = new URLSearchParams({
"api_key": apiKey,
"engine": "google",
"q": "best trail shoes",
"gl": "us",
"hl": "en",
"device": "mobile",
});
const response = await fetch(
"https://serpapi.webscrapingapi.com/v2?" + parameters,
{ signal: AbortSignal.timeout(120_000) }
);
if (!response.ok) {
throw new Error("Google Search API status " + response.status);
}
console.log(await response.json());<?php
$apiKey = getenv("WSA_API_KEY");
if ($apiKey === false || $apiKey === "") {
throw new RuntimeException("WSA_API_KEY is required");
}
$endpoint = "https://serpapi.webscrapingapi.com/v2"
. "?engine=google"
. "&api_key=" . rawurlencode($apiKey)
. "&q=" . rawurlencode("best trail shoes")
. "&gl=us&hl=en&device=mobile";
$client = curl_init($endpoint);
curl_setopt_array($client, [
CURLOPT_RETURNTRANSFER => true,
CURLOPT_TIMEOUT => 120,
]);
$body = curl_exec($client);
$status = curl_getinfo($client, CURLINFO_RESPONSE_CODE);
$error = curl_error($client);
curl_close($client);
if ($body === false) throw new RuntimeException($error);
if ($status >= 400) throw new RuntimeException("API status " . $status);
echo $body;package main
import (
"fmt"
"io"
"net/http"
"net/url"
"os"
"time"
)
func main() {
apiKey := os.Getenv("WSA_API_KEY")
if apiKey == "" { panic("WSA_API_KEY is required") }
endpoint := "https://serpapi.webscrapingapi.com/v2?engine=google" +
"&api_key=" + url.QueryEscape(apiKey) +
"&q=" + url.QueryEscape("best trail shoes") +
"&gl=us&hl=en&device=mobile"
client := &http.Client{Timeout: 120 * time.Second}
response, err := client.Get(endpoint)
if err != nil { panic(err) }
defer response.Body.Close()
if response.StatusCode >= 400 {
panic(fmt.Sprintf("API status %d", response.StatusCode))
}
body, err := io.ReadAll(response.Body)
if err != nil { panic(err) }
fmt.Println(string(body))
}import java.net.URI;
import java.net.URLEncoder;
import java.net.http.*;
import java.nio.charset.StandardCharsets;
import java.time.Duration;
public final class GoogleSearchApiExample {
public static void main(String[] args) throws Exception {
String apiKey = System.getenv("WSA_API_KEY");
if (apiKey == null || apiKey.isBlank()) {
throw new IllegalStateException("WSA_API_KEY is required");
}
String endpoint = "https://serpapi.webscrapingapi.com/v2"
+ "?engine=google"
+ "&api_key=" + URLEncoder.encode(
apiKey, StandardCharsets.UTF_8)
+ "&q=" + URLEncoder.encode(
"best trail shoes", StandardCharsets.UTF_8)
+ "&gl=us&hl=en&device=mobile";
var request = HttpRequest.newBuilder(URI.create(endpoint))
.timeout(Duration.ofSeconds(120))
.GET().build();
var response = HttpClient.newHttpClient()
.send(request, HttpResponse.BodyHandlers.ofString());
if (response.statusCode() < 200 || response.statusCode() >= 300) {
throw new RuntimeException("API status " + response.statusCode());
}
System.out.println(response.body());
}
}
using System;
using System.Net;
using System.Net.Http;
var rawApiKey = Environment.GetEnvironmentVariable("WSA_API_KEY");
if (string.IsNullOrWhiteSpace(rawApiKey)) {
throw new InvalidOperationException("WSA_API_KEY is required");
}
var apiKey = WebUtility.UrlEncode(rawApiKey);
var query = WebUtility.UrlEncode("best trail shoes");
var endpoint = "https://serpapi.webscrapingapi.com/v2"
+ "?engine=google&api_key=" + apiKey
+ "&q=" + query
+ "&gl=us&hl=en&device=mobile";
using var client = new HttpClient();
client.Timeout = TimeSpan.FromSeconds(120);
var response = await client.GetAsync(endpoint);
response.EnsureSuccessStatusCode();
Console.WriteLine(await response.Content.ReadAsStringAsync());require "net/http"
require "uri"
api_key = ENV["WSA_API_KEY"]
raise "WSA_API_KEY is required" if api_key.nil? || api_key.empty?
api_key = URI.encode_www_form_component(api_key)
query = URI.encode_www_form_component("best trail shoes")
uri = URI("https://serpapi.webscrapingapi.com/v2" +
"?engine=google&api_key=#{api_key}&q=#{query}" +
"&gl=us&hl=en&device=mobile")
http = Net::HTTP.new(uri.host, uri.port)
http.use_ssl = true
http.open_timeout = 10
http.read_timeout = 120
response = http.get(uri.request_uri)
unless response.is_a?(Net::HTTPSuccess)
raise "API status #{response.code}"
end
puts response.bodyFlujos de trabajo de compradores
Convertir las observaciones comparables de Google en señales específicas de productos.
Conservar la huella digital de la consulta primero, luego aplicar el almacenamiento, los cálculos, las reglas de revisión y la lógica de decisión apropiada para el flujo de trabajo.
SEO intelligence
Monitoreo de posición y módulos
Compara las posiciones orgánicas devueltas y los módulos opcionales en consultas controladas, locales, dispositivos y ventanas de resultados.
Explorar el seguimiento de búsquedas →
Brand visibility
Presencia de editor y dominio
Observe los dominios devueltos para los grupos de consultas aprobados manteniendo las reglas de ausencia y importancia dentro de su aplicación.
Explorar la protección de la marca
Market research
Paisajes de temas y fuentes
Map devolvió editores, títulos y descripciones en contextos de búsqueda y períodos de revisión comparables.
Explorar la investigación de mercado →
Search data contract
Registros históricos de SERP
Definir el esquema, la marca de tiempo de observación, la huella digital de la solicitud, los estados de validación y el modelo de retención necesarios más allá del tiempo de solicitud JSON.
Revisar los datos de los resultados de búsqueda →
Selección de producto
Elige la capa que coincida con tu modelo de propiedad.
La API de búsqueda de Google es la opción específica del motor para una solicitud documentada de Google y una respuesta analizada.
Network access
Los representantes
Tu equipo posee el cliente de búsqueda, la lógica de recuperación, el análisis, el modelo de respuesta y el mantenimiento.
Infraestructura
Page retrieval
API de scraping
Solicite una página pública elegible mientras su aplicación posea la extracción y su esquema descendente.
API de acceso a la web
Current product
API de búsqueda de Google
Envía una consulta contextual de Google y consuma metadatos documentados plus colecciones de resultados analizados.
Respuesta de SERP específica del motor
Interactive retrieval
API de navegador
Utilice una solicitud REST respaldada por el navegador con pasos de espera documentados y interacción cuando los parámetros de búsqueda de Google no sean adecuados.
API de acceso a la web
Operated delivery
Datos gestionados
Concordar el conjunto de consultas, la cadencia, el esquema, el proceso de calidad y la entrega con WebScrapingAPI.
Programa de datos
Evaluamiento de la producción
Evaluar la matriz de contexto completa de Google.
Utilice consultas web y verticales representativas, target locales, dispositivos, ventanas de resultados, estados de módulos opcionales, colecciones vacías y resultados HTTP fracasados antes de seleccionar un plan.
Modelo de carga de trabajo
Estimar las observacionesno solo las palabras clave.
Formulación ilustrativa del volumen de solicitudes
Las preguntas × Contexto × Superficies × Las ventanas × Frecuencia
Este es un modelo de planificación. los precios actuales y los términos del plan siguen siendo la fuente comercial de la verdad.
Lista de verificación de la evaluación
Las consultas regulares en la red y las consultas verticales requeridas
Dominio de Google, ubicación codificada, idioma y país
Contexto de escritorio, móvil y tableta en el alcance
Ventanas de páginas y módulos de respuesta opcionales
Error HTTP, tiempo de espera y manejo de la colección vacía
FAQ
Las preguntas de Google Search API para una evaluación basada en la tierra.
Utilice estas respuestas para la selección de productos, luego trate la documentación actual y las solicitudes representativas como la fuente de verdad de implementación.
¿Qué devuelve la API de búsqueda de Google?
Google Search API devuelve el contexto de la solicitud y las colecciones de resultados JSON analizadas. Los resultados orgánicos se documentan, mientras que la navegación y otros módulos de respuesta dependen de la consulta, el lugar, el dispositivo y la superficie de búsqueda solicitada.
¿Qué parámetros de búsqueda de Google puedo controlar?
Utilice q para la consulta requerida. Los controles opcionales documentados incluyen tbm, ibp, dispositivo, dominio, uule, hl, gl, inicio y num para la superficie de búsqueda, presentación, localización y paginado.
¿Qué superficies de búsqueda de Google están documentadas?
Deja TBm sin ajustar para la búsqueda web regular, o usa valores de TBm documentados para imágenes, videos, noticias y compras. Jobs utiliza el control de ibp documentado. Valida la forma devuelta para las superficies que necesita tu aplicación.
¿Debería cada respuesta contener los mismos módulos de resultados?
No. Los módulos de resultados de Google varían según la consulta, el lugar, el dispositivo y la vertical de búsqueda. Trate los bloques de respuesta como opcionales, distingue una colección ausente de una solicitud HTTP fallida y sólo lea los módulos que necesita su aplicación.
¿Cuándo debería usar google_async?
Utilice el motor google_async documentado por separado cuando su flujo de trabajo debe enviar una búsqueda de Google y recuperar la carga útil SERP terminada a través de la API Snapshot. El motor google estándar es el camino de solicitud sincrónica que se muestra en esta página.
¿Cómo puedo integrar la API de búsqueda de Google de forma segura?
Mantenga api_key en una variable del entorno del lado del servidor, valores de consulta de código de URL, establezca un tiempo límite explícito e inspeccione el estado HTTP antes de analizar JSON. Preserva el contexto de la solicitud junto a las observaciones almacenadas.
Su primera observación en Google
Prueba una consulta real en el contexto en el que depende tu producto.
Comience con el motor de Google sincrónico, valida las colecciones devueltas y mantenga la huella digital de la solicitud con cada observación.