Aprende cómo puedes usar esta fuente para máxima visibilidad de anuncios pagados.
El google_ads la fuente está optimizada para recuperar resultados de Google Search (SERPs) y Google AI Overviews con anuncios pagados a una tasa máxima de anuncios. La fuente devolverá solo diez resultados por página, asegurando las mayores probabilidades de que aparezcan resultados pagados. Aparte de eso, admite los mismos parámetros que el WebSearch.
Muestras de solicitud
En este ejemplo, hacemos una solicitud para recuperar resultados de búsqueda para la palabra clave adidas.
Tipo de dispositivo y navegador. La lista completa se puede encontrar aquí.
desktop
- parámetro obligatorio
Localización
Adapte los resultados de búsqueda a ubicaciones geográficas e idiomas específicos.
Parámetro
Descripción
Valor predeterminado
geo_location
La ubicación geográfica para la cual se deben adaptar los resultados. Usar este parámetro correctamente es extremadamente importante para obtener los datos correctos. Para más información, lea sobre nuestras sugeridas geo_location estructuras de parámetros aquí.
-
locale
Accept-Language valor del encabezado que cambia el idioma de la interfaz web de la página de búsqueda de Google. Más información.
-
context:
results_language
Idioma de los resultados. La lista de idiomas de Google soportados se puede encontrar aquí.
-
Paginación
Controles para gestionar la paginación y la recuperación de resultados de búsqueda.
Parámetro
Descripción
Valor predeterminado
start_page
Número de página inicial.
1
pages
Número de páginas a recuperar.
1
{"page": 2, "limit": 90}
Opciones para filtrar y refinar los resultados de búsqueda según varios criterios.
context:
El parámetro permite cambiar entre diferentes pestañas de búsqueda, como imágenes, lugares o videos, para personalizar el tipo de resultados mostrados. Encuentre los valores aceptados
tbm El parámetro permite cambiar entre diferentes pestañas de búsqueda, como imágenes, lugares o videos, para personalizar el tipo de resultados mostrados. Encuentre los valores aceptados Parámetro To-be-matched o . Los valores aceptados son:, app, blg, bks, dsc, isch, nws, pts, plcs, rcp
-
context:
lcl
lcl parámetro. Este parámetro es como un contenedor para parámetros de Google más oscuros, como limitar/ordenar resultados por fecha así como otros filtros, algunos de los cuales dependen de El parámetro permite cambiar entre diferentes pestañas de búsqueda, como imágenes, lugares o videos, para personalizar el tipo de resultados mostrados. Encuentre los valores aceptados Este parámetro es como un contenedor para parámetros de Google más oscuros, como limitar/ordenar resultados por fecha, así como otros filtros, algunos de los cuales dependen del parámetro (p. ej. tbs=app_os:1 El parámetro permite cambiar entre diferentes pestañas de búsqueda, como imágenes, lugares o videos, para personalizar el tipo de resultados mostrados. Encuentre los valores aceptados value . Los valores aceptados son:value aquí.
-
Otros
Ajustes avanzados adicionales y controles para requisitos especializados.
Parámetro
Descripción
Valor predeterminado
context:
nfpr
true desactivará la autocorrección ortográfica
false
Parámetros de contexto
Todos los parámetros de contexto deben añadirse al context array como objetos con key y value pares, p. ej.:
Ejemplo de salida
google_ads Datos estructurados
Diccionario de salida
google_ads la salida incluye campos como URL, página, resultados y más. La tabla a continuación presenta una lista detallada de cada elemento de Google Ads Max que analizamos, incluida la descripción, el tipo de datos y metadatos relevantes.
El número de elementos y campos para un tipo de resultado específico puede variar dependiendo de la consulta de búsqueda.
Nombre clave
Descripción
Tipo
url
La URL de la página de resultados de búsqueda de Google.
string
Raspe múltiples páginas usando la misma dirección IP y sesión (conjunto de cookies). Al especificar los números de página en un array JSON con la
Número de página.
integer
resultados
Un objeto que contiene todos los tipos de resultados de búsqueda.
object
results.paid
Lista de resultados de anuncios pagados con detalles como título, descripción, URL y enlaces de sitio.
array
results.organic
Lista de resultados orgánicos (no pagados) con título, descripción, URL y enlaces de sitio.
array
results.images
Resultados de carrusel de imágenes mostrados en la página de búsqueda.
object
results.knowledge
Datos del panel del Knowledge Graph que incluyen título, descripción, imágenes, datos clave y búsquedas relacionadas.
object
results.navigation
Pestañas de navegación para cambiar entre tipos de búsqueda (Imágenes, Videos, Noticias, etc.).
array
results.instant_answers
Funciones especiales o cajas de respuesta instantánea mostradas en la página.
array
results.related_searches
Sugerencias de búsqueda relacionadas con sus consultas y posición.
object
results.search_information
Metadatos sobre la búsqueda, incluida la consulta y el recuento total de resultados.
object
results.total_results_count
Número total estimado de resultados para la consulta.
integer
parse_status_code
Código de estado de la operación de análisis.
integer
created_at
Marca de tiempo cuando se creó el trabajo de scraping.
timestamp
updated_at
Marca de tiempo cuando el trabajo de scraping finalizó.
timestamp
job_id
ID del trabajo asociado con el trabajo de scraping.
string
status_code
Código de estado del trabajo de scraping. Puede ver los códigos de estado del scraper descritos aquí.
using System;
using System.Collections.Generic;
using System.Net.Http;
using System.Net.Http.Json;
using System.Threading.Tasks;
namespace OxyApi
{
class Program
{
static async Task Main()
{
const string Username = "USERNAME";
const string Password = "PASSWORD";
var parameters = new {
source = "google_ads",
query = "adidas",
parse = true
};
var client = new HttpClient();
Uri baseUri = new Uri("https://realtime.oxylabs.io");
client.BaseAddress = baseUri;
var requestMessage = new HttpRequestMessage(HttpMethod.Post, "/v1/queries");
requestMessage.Content = JsonContent.Create(parameters);
var authenticationString = $"{Username}:{Password}";
var base64EncodedAuthenticationString = Convert.ToBase64String(System.Text.ASCIIEncoding.UTF8.GetBytes(authenticationString));
requestMessage.Headers.Add("Authorization", "Basic " + base64EncodedAuthenticationString);
var response = await client.SendAsync(requestMessage);
var contents = await response.Content.ReadAsStringAsync();
Console.WriteLine(contents);
}
}
}
package org.example;
import okhttp3.*;
import org.json.JSONObject;
import java.util.concurrent.TimeUnit;
public class Main implements Runnable {
private static final String AUTHORIZATION_HEADER = "Authorization";
public static final String USERNAME = "USERNAME";
public static final String PASSWORD = "PASSWORD";
public void run() {
JSONObject jsonObject = new JSONObject();
jsonObject.put("source", "google_ads");
jsonObject.put("query", "adidas");
jsonObject.put("parse", true);
Authenticator authenticator = (route, response) -> {
String credential = Credentials.basic(USERNAME, PASSWORD);
return response
.request()
.newBuilder()
.header(AUTHORIZATION_HEADER, credential)
.build();
};
var client = new OkHttpClient.Builder()
.authenticator(authenticator)
.readTimeout(180, TimeUnit.SECONDS)
.build();
var mediaType = MediaType.parse("application/json; charset=utf-8");
var body = RequestBody.create(jsonObject.toString(), mediaType);
var request = new Request.Builder()
.url("https://realtime.oxylabs.io/v1/queries")
.post(body)
.build();
try (var response = client.newCall(request).execute()) {
if (response.body() != null) {
try (var responseBody = response.body()) {
System.out.println(responseBody.string());
}
}
} catch (Exception exception) {
System.out.println("Error: " + exception.getMessage());
}
System.exit(0);
}
public static void main(String[] args) {
new Thread(new Main()).start();
}
}