Forma de respuesta indicada por delante
Saber si el motor devuelve colecciones de resultados analizados o una carga útil de SERP fuente antes de diseñar el consumidor.
API SERP
Envía una solicitud contextual a los puntos finales documentados de Google, Bing, DuckDuckGo o Yandex. Google y Bing devuelven las colecciones de resultados JSON analizadas; DuckDuckGo y Yandex devuelven los metadatos de la solicitud plus la carga útil de HTML SERP de origen en un sobre JSON.
Datos de búsqueda sin el raspador
Proporcionar el contexto de la consulta y la búsqueda. WebScrapingAPI opera el manejo de la recuperación y la respuesta compatibles, incluidas las colecciones de resultados analizados donde el punto final seleccionado los documenta.
Saber si el motor devuelve colecciones de resultados analizados o una carga útil de SERP fuente antes de diseñar el consumidor.
Mantenga las entradas de motor, consulta, localización, idioma, dispositivo, vertical y paginado junto a cada observación.
WebScrapingAPI ejecuta la ruta de recuperación de búsqueda compatible y mantiene un manejo documentado de la respuesta.
Para los puntos finales analizados, las colecciones de resultados opcionales aparecen solo cuando el SERP devuelto las expone; la ausencia no es automáticamente un fallo de recogida.
Preservar la huella digital de la solicitud con resultados almacenados para que las comparaciones sigan siendo iguales.
Capacitación documentada
Cada motor tiene sus propios parámetros y forma de respuesta.
Google Search admite controles documentados de web, imágenes, videos, noticias, compras y trabajos.
googlegoogle_asyncgoogle_mapsgoogle_flightsgoogle_maps_reviewsgoogle_reverse_imagegoogle_trendsgoogle_hotelsRecibir colecciones de resultados JSON documentadas con controles de mercado, ubicación, idioma, búsqueda segura, compensación y recuento de resultados.
Recibir metadatos de solicitud y la carga útil de HTML SERP fuente dentro de un envase JSON, con regiones documentadas, lenguaje de interfaz, búsqueda segura, rango de tiempo y controles de dispositivo.
Recibir metadatos de solicitud y la carga útil de HTML SERP fuente dentro de un envase JSON, con controles documentados de ubicación, idioma, dispositivo, página y rango de tiempo.
Límites de cobertura: an engine name does not imply identical controls or parsing. Google and Bing document parsed JSON result collections; DuckDuckGo and Yandex document a JSON envelope containing the source SERP HTML payload. The current endpoint documentation remains the production source of truth.
Respuesta del motor
Las colecciones analizadas y las cargas útiles de la fuente requieren diferentes consumidores. Seleccione primero el motor, valide su forma de respuesta actual y preserve el contexto de la solicitud junto a la salida.
Metadatos de motor, consulta y nivel de respuesta expuestos por el punto final seleccionado.
search_parameters · generalTítulos, enlaces, descripciones, posiciones observadas y módulos opcionales donde se documenten y devuelvan.
organic[] · related[] · module?La carga útil de HTML fuente se devuelve dentro del sobre JSON; su aplicación posee cualquier extracción de ella.
search_results: "<html>…</html>"Añadir ID de ejecución, timestamps solicitados, identificadores de grupos de consulta y versiones de esquema cuando los resultados entran en sus sistemas.
run_id · observed_at · schemaControl de búsqueda de Google
Comience con la consulta requerida. Añade sólo el contexto documentado necesario para que la observación sea útil y comparable.
Utilice la consulta, una vertical soportada o el control de búsqueda de trabajos documentados.
qtbmibpEstablezca los valores de dominio soportado, ubicación codificada, idioma, país y dispositivo.
domainuulehlgldeviceUtilice el descenso documentado y el recuento de resultados solicitados para la ventana de página que necesita.
startnumengine=googleUtilice el camino documentado estándar cuando la aplicación deba esperar la respuesta actual.
Review synchronous parametersengine=google_asyncUtilice el flujo de trabajo documentado dedicado cuando la búsqueda de Google en cola se ajusta a la carga de trabajo. No asuma que el comportamiento asincrónico sea compartido por todos los motores.
Review asynchronous workflowUna solicitud
Su aplicación define la observación y consume el resultado específico del punto final. WebScrapingAPI opera la recuperación y el manejo de respuestas compatibles entre ellos.
Definir la observación
Seleccione el motor, la consulta y los parámetros de ubicación, idioma, dispositivo, tipo de búsqueda y paginado compatibles.
Envía la solicitud
Llame al punto final de SERP del lado del servidor con su clave de API. WebScrapingAPI opera la recuperación y el manejo de respuestas compatibles.
Validación y uso
Inspeccione el estado HTTP y la forma de respuesta específica del motor, luego mantenga el contexto requerido por los flujos de trabajo de clasificación, extracción, alerta o investigación.
La integración
Mantenga la clave de API fuera del código del lado del cliente, los valores de búsqueda de código URL, establezca un tiempo límite e inspeccione los estados HTTP fallidos antes de analizar la respuesta.
Breve solicitud
Utilice el mismo motor, mercado, idioma, dispositivo y tipo de búsqueda en el que su producto dependerá en la producción.
WSA_API_KEYpermanece en el lado del servidorapi_key + engine + qgl + hl + devicecurl --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=running shoes" \
--data-urlencode "gl=us" \
--data-urlencode "hl=en" \
--data-urlencode "device=mobile"import os
import requests
response = requests.get(
"https://serpapi.webscrapingapi.com/v2",
params={
"api_key": os.environ["WSA_API_KEY"],
"engine": "google",
"q": "running shoes",
"gl": "us",
"hl": "en",
"device": "mobile",
},
timeout=120,
)
response.raise_for_status()
print(response.json())const parameters = new URLSearchParams({
api_key: process.env.WSA_API_KEY,
engine: "google",
q: "running 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("API status " + response.status);
console.log(await response.json());<?php
$parameters = http_build_query([
"api_key" => getenv("WSA_API_KEY"),
"engine" => "google",
"q" => "running shoes",
"gl" => "us",
"hl" => "en",
"device" => "mobile",
]);
$client = curl_init("https://serpapi.webscrapingapi.com/v2?" . $parameters);
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() {
parameters := url.Values{}
parameters.Add("api_key", os.Getenv("WSA_API_KEY"))
parameters.Add("engine", "google")
parameters.Add("q", "running shoes")
parameters.Add("gl", "us")
parameters.Add("hl", "en")
parameters.Add("device", "mobile")
client := &http.Client{Timeout: 120 * time.Second}
response, err := client.Get(
"https://serpapi.webscrapingapi.com/v2?" + parameters.Encode(),
)
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 SerpApiExample {
public static void main(String[] args) throws Exception {
String queryString = "api_key=" + URLEncoder.encode(
System.getenv("WSA_API_KEY"), StandardCharsets.UTF_8
) + "&engine=google&q=running%20shoes"
+ "&gl=us&hl=en&device=mobile";
var request = HttpRequest.newBuilder()
.uri(URI.create("https://serpapi.webscrapingapi.com/v2?" + queryString))
.timeout(Duration.ofSeconds(120))
.GET().build();
var response = HttpClient.newHttpClient()
.send(request, HttpResponse.BodyHandlers.ofString());
if (response.statusCode() >= 400) {
throw new RuntimeException("API status " + response.statusCode());
}
System.out.println(response.body());
}
}
using System;
using System.Net;
var apiKey = WebUtility.UrlEncode(
Environment.GetEnvironmentVariable("WSA_API_KEY")
);
var requestUrl =
"https://serpapi.webscrapingapi.com/v2?api_key=" + apiKey +
"&engine=google&q=running%20shoes" +
"&gl=us&hl=en&device=mobile";
using var client = new HttpClient();
client.Timeout = TimeSpan.FromSeconds(120);
var response = await client.GetAsync(requestUrl);
response.EnsureSuccessStatusCode();
Console.WriteLine(await response.Content.ReadAsStringAsync());require "net/http"
require "uri"
uri = URI("https://serpapi.webscrapingapi.com/v2")
uri.query = URI.encode_www_form(
api_key: ENV.fetch("WSA_API_KEY"),
engine: "google",
q: "running shoes",
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)
raise "API status #{response.code}" unless response.is_a?(Net::HTTPSuccess)
puts response.bodyPropiedad operativa
API SERP devuelve una respuesta contextual específica del motor. Su aplicación decide cómo las colecciones analizadas o las cargas útiles de la fuente se convierten en clasificaciones, registros extraídos, comparaciones, alertas, investigaciones o monitoreo recurrente.
WebScrapingAPI opera
Tu equipo es dueño
Frontera de la decisión: SERP API does not define a universal rank, decide whether an absence is commercially meaningful, or operate your downstream analytics. Use eligible public results in line with the Acuerdo de servicio and applicable requirements.
Casos de uso
Conserva primero el contexto de la solicitud y luego calcula las métricas y las reglas de decisión apropiadas para el caso de uso.
Selección de producto
API SERP proporciona acceso de búsqueda consciente del motor con formas de respuesta documentadas.
Tu equipo posee el cliente de búsqueda, la lógica de acceso, el análisis, el mantenimiento y el modelo de resultados.
WebScrapingAPI recupera una página pública elegible mientras su solicitud posee la extracción.
Envía una consulta de búsqueda compatible y recibe colecciones analizadas donde se documentan, o una carga útil de SERP fuente dentro de un envase JSON.
Utilice una solicitud REST respaldada por el navegador con pasos de espera documentados y interacción cuando los parámetros SERP específicos del motor no sean adecuados.
WebScrapingAPI opera un conjunto de consultas acordado, cadencia, esquema, proceso de calidad y entrega.
Evaluamiento de la producción
Utilice consultas representativas antes de dimensionar un plan. Incluya estados ordinarios, pesados en características, localizados, paginados, vacíos y fallidos en los motores y dispositivos que utilizará su aplicación.
La fórmula es un modelo de planificación, no una promesa de facturación.
FAQ
Utilice estas respuestas para la selección de productos, luego trate la documentación actual de los puntos finales y las solicitudes representativas como la fuente de verdad de implementación.
API SERP es un punto final del lado del servidor para enviar una consulta de búsqueda con contexto documentado y recibir la forma de respuesta que soporta ese motor. Google y Bing documentaron las colecciones de resultados JSON; DuckDuckGo y Yandex documentan un envase JSON que contiene metadatos de solicitud y la carga útil de HTML de origen SERP.
La documentación actual WebScrapingAPI incluye los puntos finales de búsqueda de Google, Bing, DuckDuckGo y Yandex. Google y Bing documentan las colecciones de resultados analizados, mientras que DuckDuckGo y Yandex documentan una carga útil de HTML fuente dentro de un envase JSON. Validese los parámetros y la forma de respuesta de cada motor antes de usar la producción.
La respuesta depende del motor seleccionado. Google y Bing documentan metadatos JSON plus colecciones de resultados analizados. DuckDuckGo y Yandex documentan metadatos JSON plus la carga útil de HTML SERP fuente, que su aplicación puede almacenar o extraer de acuerdo con su propio modelo de datos.
Para los motores con colecciones analizadas documentadas, los módulos devueltos dependen del motor, la consulta, la ubicación, el dispositivo y el tipo de búsqueda. Los resultados orgánicos y los módulos específicos de los puntos finales, como anuncios, elementos locales, compras, medios o búsquedas relacionadas, aparecen solo cuando la página de búsqueda devuelta los expone.
Utilice los parámetros documentados para el motor seleccionado. Google Busca documenta dominio, ubicación codificada, idioma de interfaz, país y controles de dispositivos de escritorio, móvil o tablet; otros motores utilizan sus propios parámetros de mercado y localización.
La documentación incluye un motor de búsqueda asíncrono de Google dedicado para la recuperación en cola. Trate el comportamiento asíncrono como específico del punto final y use la documentación de flujo de trabajo actual al implementar la presentación y la recuperación de resultados.
No. Un rank pertenece al motor, consulta, localización, idioma, dispositivo, tipo de búsqueda, estado de paginado y tiempo de observación que lo produjo.
WebScrapingAPI mantiene el manejo de respuestas y las colecciones analizadas compatibles donde la documentación de los puntos finales las proporciona. DuckDuckGo y Yandex actualmente devuelven la carga útil de HTML SERP fuente en un envase JSON, por lo que su equipo posee cualquier extracción de esa carga útil, así como su modelo de datos interno y decisiones descendentes.
Inspeccione el estado HTTP y el cuerpo de errores documentados, utilice retrasos limitados cuando sea apropiado y distingue una solicitud fallida de una respuesta de búsqueda exitosa en la que una colección de resultados opcionales está ausente o vacía.
API SERP acepta una consulta de búsqueda compatible y devuelve la forma documentada de respuesta para ese motor: colecciones de resultados analizados donde se apoyan, o una carga útil de SERP fuente dentro de un envase JSON. API de scraping recupera una página web pública, mientras que Datos gestionados agrega un conjunto de consultas acordado, horario, proceso de calidad, esquema y entrega operado por WebScrapingAPI.
Su primera observación
Comience con un motor documentado y un conjunto de consultas representativas, o hable con nuestro equipo sobre la entrega recurrente de datos de búsqueda.