> For the complete documentation index, see [llms.txt](https://developers.oxylabs.io/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://developers.oxylabs.io/api-targets/es/search-engines/google/ads.md).

# Ads Max

Extrae resultados de Google Search optimizados para máxima visibilidad de anuncios pagados, con datos analizados para anuncios pagados, resultados orgánicos, carruseles de imágenes y más.

La `google_ads` la fuente está optimizada para recuperar resultados de Google Search (SERPs) y Google AI Overviews con anuncios de pago a **tasa máxima de anuncios**. La fuente devolverá solo diez resultados por página, garantizando la mayor probabilidad de que aparezcan resultados de pago. Además de eso, admite los mismos parámetros que la regular [**Web** **Búsqueda**](https://github.com/oxylabs/gitbook-public-english/blob/master/scraping-solutions/web-scraper-api/targets/google/broken-reference/README.md).

## Ejemplos de solicitud

En este ejemplo, hacemos una solicitud para recuperar resultados de búsqueda para la palabra clave `adidas.`

{% tabs %}
{% tab title="cURL" %}

```shell
curl 'https://realtime.oxylabs.io/v1/queries' \\
--user 'USERNAME:PASSWORD' \\
-H 'Content-Type: application/json' \\
-d '{
        "source": "google_ads", 
        "query": "adidas",
        "parse": true
    }'
```

{% endtab %}

{% tab title="Python" %}

```python
import requests
from pprint import pprint


# Estructura del payload.
payload = {
    'source': 'google_ads',
    'query': 'adidas',
    'parse': True
}


# Obtener respuesta.
response = requests.request(
    'POST',
    'https://realtime.oxylabs.io/v1/queries',
    auth=('USERNAME', 'PASSWORD'),
    json=payload,
)

# Print prettified response to stdout.
pprint(response.json())
```

{% endtab %}

{% tab title="Node.js" %}

```javascript
const https = require("https");

const username = "USERNAME";
const password = "PASSWORD";
const body = {
    source: "google_ads",
    query: "adidas",
    parse: true,
};

const options = {
    hostname: "realtime.oxylabs.io",
    path: "/v1/queries",
    method: "POST",
    headers: {
        "Content-Type": "application/json",
        Authorization:
            "Basic " + Buffer.from(`${username}:${password}`).toString("base64"),
    },
};

const request = https.request(options, (response) => {
    let data = "";

    response.on("data", (chunk) => {
        data += chunk;
    });

    response.on("end", () => {
        const responseData = JSON.parse(data);
        console.log(JSON.stringify(responseData, null, 2));
    });
});

request.on("error", (error) => {
    console.error("Error:", error);
});

request.write(JSON.stringify(body));
request.end();
```

{% endtab %}

{% tab title="HTTP" %}

```http
https://realtime.oxylabs.io/v1/queries?source=google_ads&query=adidas&parse=true&access_token=12345abcde
```

{% endtab %}

{% tab title="PHP" %}

```php
<?php

$params = array(
    'source' => 'google_ads',
    'query' => 'adidas',
    'parse' => true
);

$ch = curl_init();

curl_setopt($ch, CURLOPT_URL, "https://realtime.oxylabs.io/v1/queries");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($params));
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_USERPWD, "USERNAME" . ":" . "PASSWORD");


$headers = array();
$headers[] = "Content-Type: application/json";
curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);

$result = curl_exec($ch);
echo $result;

if (curl_errno($ch)) {
    echo 'Error:' . curl_error($ch);
}
curl_close($ch);
```

{% endtab %}

{% tab title="Golang" %}

```go
package main

import (
	"bytes"
	"encoding/json"
	"fmt"
	"io/ioutil"
	"net/http"
)

func main() {
	const Username = "USERNAME"
	const Password = "PASSWORD"

	payload := map[string]interface{}{
		"source": "google_ads",
		"query":  "adidas",
		"parse":  true,
	}

	jsonValue, _ := json.Marshal(payload)

	client := &http.Client{}
	request, _ := http.NewRequest("POST",
		"https://realtime.oxylabs.io/v1/queries",
		bytes.NewBuffer(jsonValue),
	)

	request.SetBasicAuth(Username, Password)
	response, _ := client.Do(request)

	responseText, _ := ioutil.ReadAll(response.Body)
	fmt.Println(string(responseText))
}
```

{% endtab %}

{% tab title="C#" %}

```csharp
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);
        }
    }
}
```

{% endtab %}

{% tab title="Java" %}

```java
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();
    }
}
```

{% endtab %}

{% tab title="JSON" %}

```json
{
    "source": "google_ads", 
    "query": "adidas",
    "parse": true
}
```

{% endtab %}
{% endtabs %}

Usamos integración síncrona [**Realtime**](/products/es/web-scraper-api/integration-methods/realtime.md) método de integración en nuestros ejemplos. Si deseas usar [**Proxy Endpoint**](/products/es/web-scraper-api/integration-methods/proxy-endpoint.md) o una integración asíncrona [**Push-Pull**](/products/es/web-scraper-api/integration-methods/push-pull.md) integración, consulta la [**métodos de integración**](/products/es/web-scraper-api/integration-methods.md) sección.

## Valores de los parámetros de solicitud

### Genérico

Configuración básica y opciones de personalización para extraer anuncios de Google.

<table><thead><tr><th width="222">Parámetro</th><th width="350.3333333333333">Descripción</th><th>Valor predeterminado</th></tr></thead><tbody><tr><td><mark style="background-color:green;"><strong>source</strong></mark></td><td>Configura el scraper.</td><td><code>google_ads</code></td></tr><tr><td><mark style="background-color:green;"><strong>consulta</strong></mark></td><td>La palabra clave o frase que se buscará.</td><td>-</td></tr><tr><td><code>render</code></td><td>Habilita el renderizado de JavaScript cuando se establece en <code>html</code>. <a href="/products/es/web-scraper-api/features/js-rendering-and-browser-control.md#javascript-rendering"><strong>Más información</strong></a><strong>.</strong></td><td>-</td></tr><tr><td><code>parse</code></td><td>Devuelve datos analizados cuando se establece en <code>true</code>. Explorar la salida <a href="#output-data-dictionary"><strong>diccionario de datos</strong></a>.</td><td><code>false</code></td></tr><tr><td><code>callback_url</code></td><td>URL para tu endpoint de callback. <a href="/products/es/web-scraper-api/integration-methods/push-pull.md"><strong>Más información</strong></a></td><td>-</td></tr><tr><td><code>user_agent_type</code></td><td>Tipo de dispositivo y navegador. La lista completa se puede encontrar <a href="/products/es/web-scraper-api/features/http-context-and-job-management/user-agent-type.md"><strong>aquí</strong></a>.</td><td><code>desktop</code></td></tr></tbody></table>

\- parámetro obligatorio

### Localización

Adapta los resultados de búsqueda a ubicaciones geográficas y lenguajes específicos.

<table><thead><tr><th width="222">Parámetro</th><th width="350.3333333333333">Descripción</th><th>Valor predeterminado</th></tr></thead><tbody><tr><td><code>geo_location</code></td><td>La ubicación geográfica a la que debe adaptarse el resultado. Usar correctamente este parámetro es extremadamente importante para obtener los datos correctos. Para más información, lee sobre nuestras <code>geo_location</code> estructuras de parámetros <a href="/products/es/web-scraper-api/features/localization/serp-localization.md#google"><strong>aquí</strong></a><strong>.</strong></td><td>-</td></tr><tr><td><code>locale</code></td><td><code>Accept-Language</code> valor del encabezado que cambia el idioma de la interfaz web de tu página de búsqueda de Google. <a href="/products/es/web-scraper-api/features/localization/domain-locale.md#google"><strong>Más información</strong></a>.</td><td>-</td></tr></tbody></table>

### Paginación

Controles para gestionar la paginación y la recuperación de resultados de búsqueda.

<table><thead><tr><th width="222">Parámetro</th><th width="350.3333333333333">Descripción</th><th width="167">Valor predeterminado</th></tr></thead><tbody><tr><td><code>start_page</code></td><td>Número de página inicial.</td><td><code>1</code></td></tr><tr><td><code>pages</code></td><td>Número de páginas a recuperar.</td><td><code>1</code></td></tr></tbody></table>

### Filtrado

Opciones para filtrar y refinar los resultados de búsqueda según varios criterios.

<table><thead><tr><th width="245">Parámetro</th><th width="350.3333333333333">Descripción</th><th>Valor predeterminado</th></tr></thead><tbody><tr><td><p><code>contexto</code>:</p><p><code>udm</code></p></td><td><code>udm</code> el parámetro permite cambiar entre distintas pestañas de búsqueda, como imágenes, lugares o videos, para personalizar el tipo de resultados mostrados. Encuentra los valores aceptados <a href="https://files.gitbook.com/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FzrXw45naRpCZ0Ku9AjY1%2Fuploads%2FeoShpvYuZlb4hGpCIXNG%2Fudm_values%20(eu%2Bus).json?alt=media&#x26;token=a6b77fab-b170-478c-b06f-b8fbf7ab64c7"><strong>aquí</strong></a>.</td><td>-</td></tr><tr><td><code>contexto</code>:<br><code>tbm</code></td><td>A emparejar o <code>tbm</code> parámetro. Los valores aceptados son: <code>app</code>, <code>blg</code>, <code>bks</code>, <code>dsc</code>, <code>isch</code>, <code>nws</code>, <code>pts</code>, <code>plcs</code>, <code>rcp</code>, <code>lcl</code></td><td>-</td></tr><tr><td><code>contexto</code>:<br><code>tbs</code></td><td><code>tbs</code> 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 del <code>tbm</code> parámetro (p. ej. <code>tbs=app_os:1</code> solo está disponible con <code>tbm</code> valor <code>app</code>). Más información <a href="https://stenevang.wordpress.com/2013/02/22/google-advanced-power-search-url-request-parameters/"><strong>aquí</strong></a>.</td><td>-</td></tr></tbody></table>

### Otros

Configuraciones y controles avanzados adicionales para requisitos especializados.

<table><thead><tr><th width="222">Parámetro</th><th width="350.3333333333333">Descripción</th><th>Valor predeterminado</th></tr></thead><tbody><tr><td><code>contexto</code>:<br><code>nfpr</code></td><td><code>true</code> desactivará la autocorrección ortográfica</td><td><code>false</code></td></tr></tbody></table>

### Parámetros de contexto

Todos los parámetros de contexto deben añadirse al `contexto` array como objetos con `key` y `valor` pares, por ejemplo:

```json
...
"context": [
    {
        "key": "filter",
        "value": "0"
    }
]
...
```

## Muestra de salida

<details>

<summary><code>google_ads</code> salida estructurada</summary>

```json
{
    "results": [
      {
        "content": {
          "url": "https://www.google.nl/search?q=adidas&uule=w+CAIQICILbmV0aGVybGFuZHM&gl=nl&hl=nl",
          "page": 1,
          "results": {
            "paid": [
              {
                "pos": 1,
                "url": "https://www.adidas.nl/",
                "desc": "Verhalen, looks en sportkleding bij adidas® Sinds 1949. Ontdek de officiële adidas® shop. Of je nu sport of relaxt, geef een boost aan je prestaties en stijl in de adidas® shop.",
                "title": "Officiële shop adidas® - Klassiekers & exclusieve items",
                "data_rw": "https://www.google.nl/aclk?sa=l&ai=DChcSEwiWl6aS-6uBAxWXkmgJHZLLC74YABAAGgJ3Zg&gclid=EAIaIQobChMIlpemkvurgQMVl5JoCR2Sywu-EAMYASAAEgJRofD_BwE&sig=AOD64_2CbsJk2pXa0T2IqTfvVb1wKZvM8g&q&adurl",
                "sitelinks": {
                  "inline": [
                    {
                      "url": "https://www.adidas.nl/dames?grid=true",
                      "title": "adidas® Dames"
                    },
                    {
                      ...
                    }
                  ]
                },
                "url_shown": "https://www.adidas.nl",
                "pos_overall": 10
              }
            ],
            "images": {
              "items": [
                {
                  "alt": "adidas Forum Low Schoenen - Wit | adidas Officiële Shop",
                  "pos": 1,
                  "source": "https://www.adidas.nl/forum-low-schoenen/FY7756.html"
                },
                {
                  ...
                }
              ],
              "pos_overall": 5
            },
            "organic": [
              {
                "pos": 1,
                "url": "https://www.adidas.nl/",
                "desc": "Sportwinkel voor adidas schoenen en kleding. Shop o.a. Originals, Voetbal, Hardlopen en gym artikelen op de officiële adidas NL website.",
                "title": "adidas Officiële Website Nederland | Sportwinkel",
                "sitelinks": {
                  "expanded": [
                    {
                      "url": "https://www.adidas.nl/outlet",
                      "title": "Outlet"
                    },
                    {
                      ...
                    },
                    {
                      "url": "https://www.adidas.nl/kinderen",
                      "title": "Kinderen"
                    }
                  ]
                },
                "url_shown": "https://www.adidas.nl",
                "pos_overall": 1
              },
              {
                ...
              },
              {
                "pos": 7,
                "url": "https://www.jdsports.nl/merk/adidas-originals/",
                "desc": "De volledige adidas Originals collectie bij JD Sports Nederland. adidas Originals trainingspak, slippers & sneakers in exclusieve kleuren.",
                "title": "adidas Originals trainingspak, slippers & sneakers zwart & ...",
                "url_shown": "https://www.jdsports.nl› merk › adidas-originals",
                "pos_overall": 9
              }
            ],
            "knowledge": {
              "title": "Adidas",
              "images": [
                "iVBORw0KGgoAAAANSUhEUgAAAHcAAABQCAMAAAAUTho2AAAAY1BMVEX///8AAACdnZ1hYWF7e3tdXV3h4eFFRUWmpqbx8fFPT0/V1dXq6ur6+vq1tbXl5eVVVVVra2uRkZE9PT0ZGRnOzs44ODi9vb1xcXGGhobFxcUsLCysrKwzMzMdHR0TExMkJCST6SYPAAAFMUlEQVRogcVZ2YKqMAwFAaFAkUUFUUf//ysvbZNSaDMyCt68OEOgp6TJyYLnrSF5dVplnb8Jr32/+T7s7ccf5PZl1OzsK+HfRM0rH+XyPVRxsKPsvwVbPExYP/oOatb4M+m/gGocrJbj5qjTg9Wy2xq3dcL6fr41cODGDbfG3RMvnG0NfHHjxlvjcuKFi62Bb27c4+Y0fXYD11vjnghLH7YCbJn6dTCWkGAb1EOJtHQgXniLkoeFYmWgJTdZ+tf1YRO1cqX+4w83cLIyaq9dGGipcOM+2Jqow8FqQVpK3cAr0jSbEiPQUubGXa/kuR2nC/8ALRGxlK6DerpbKwMtMeKF1yh5Ds5kC7G0c+M+P6dpIgEALfGrW/15yfOClqiS5/NYIkx5BnXpVlcf41KmhE5su5KHoCXsxDq3doWSJ3avDLRExdLnJQ9lSqClxK39+dy1QvfKpdJym1akvF/y5BAsL2ipJ9Rvtg9DF/SEPwlTIi0RsVS+BVuIuQXyzu+0RHHLGzSdgRODc1DVI6iJ9uFMr+8WphNcB1eITgzUbJWSh5vUCMFCmRJoicgef6Lp9mk+iTmcMCWqiVhaXvLs5+wEvMOPzoVRTTnAwpKH2RSBwULRNDxJOMCykmfn8g/knd87McoB2gUv++N+FJyDqh6hE6PahwUlD8E72GoRNI0lD7HrBTT9oqbJf1dTDrAgll6MLYiS5w5qwgEWlDyUrXC6TKiBligHWNCZvuAdKuOBmih5ltD0zi3FLkl2BXRitVvde7n74fr92YM0YQTsYC8j1Z3juU9F0uAQMJH4tblP4m4xJfzfuOV/wm2TwYFsItgcl5C3cYswbeLuxry+6rpK55D+MlyOdnu18IC7C8OwyyfqANUa91SX6ql8WKyDDzws6WJ1sxZjbB9KKgT+GUmkLBznO1cDbqtzaSMvy094bKSUFMMws9hP4jJrWjPxZ2YlL4nLrZGHIPd8ktdP49nYuPxpXTZxmV1QSVx7tCRwZxlDHBSWoNdy/CCUjAv8pLHeq4kLVdjTUAtcMOcjTbURYxgKHFuOZbm4UyXzSqyl69cEDy+WJmmPFq5SN1JdPDWuqu6e0i9xvBfDblQBqFotDrkc25FM4z4BSN18n+GqGUAJJQy7Iq40UgPxzRvElZfBr6sgCEqmOq4xMAvAlRsfJ6v7Ge4Jdg1yAFx1mw4zhrjK18qbEUMBHhjIXeHWo2WkdFPc2jQSHlbomeEkpAbcMeLuYaLAhD3PfHZronZo9K/tFFeqjXTYK0BZJhlN4Alwp19fUuEV0gDjnWprieQHc1Awy0fBxMyaJ8OZ8faAO4/Vm6qYGvt9g1XeN0Pc+ffTzDrfxjhfo9QPp7gXdddUDedrfHCvNe7gZH1daYboVGk6ViiqcEvU71iPqWib+fNxpkZ/1sejjtUYZHG2V5XyA0IAXRMmRgl8O8D98PMMl0/CG9QhsJg+thRw9/7j8UB3UNyEsRWKw2I4PklQnYq2mvfAeQZfqTtjqW5HvlLmuvYC46T5SlHxbWp7bD7SoNQdboIHPWw+inQGMPkZLsZRpEcuInAj9ec5inQq0LxRaAeVPZOjY048ZzNk4jrUAtcxRJ28G5hGRooNLD01t5aY5N+DlQhV/rUSYexZfQYQoRFcZahxPT52aY08lWhSbxhVyln+2ZmOI+QqL8t6IzO2cx/7pcOufAxJs868TDQWqGBJNRimuZy8XPQmwzYL0XZgoOS3avC4+NJ7TKgx3FnRiadCuAz+lNXCf45RLRf/B6q/PRO4flx7AAAAAElFTkSuQmCC"
              ],
              "factoids": [
                {
                  "links": [
                    {
                      "href": "/search?sca_esv=565570927&gl=nl&hl=nl&q=adidas+aandelenkoers&stick=H4sIAAAAAAAAAONgecRoxi3w8sc9YSndSWtOXmNU5-IKzsgvd80rySypFJLkYoOy-KV4ubj10_UNU8rMTcvSUngWsYokpmSmJBYrJCbmpaTmpOZl56cWFQMAFq2xOVIAAAA&sa=X&ved=2ahUKEwi_pp6S-6uBAxXAh_0HHfISDAcQ6BN6BAhKEAI",
                      "title": "Aandelenkoers"
                    },
                    {
                      ...
                    }
                  ],
                  "title": "Aandelenkoers",
                  "content": "ADS (ETR) € 170,90 -0,20 (-0,12%)14 sep 17:43 CEST - Disclaimer"
                },
                {
                  ...
                },
                {
                  "links": [
                    {
                      "href": "/search?sca_esv=565570927&gl=nl&hl=nl&q=adidas+beurs&sa=X&ved=2ahUKEwi_pp6S-6uBAxXAh_0HHfISDAcQ6BMoAHoECFQQAg",
                      "title": "Beurs"
                    },
                    {
                      "href": "/search?sca_esv=565570927&gl=nl&hl=nl&q=Deutsche+B%C3%B6rse:+ADS&stick=H4sIAAAAAAAAAONgVuLUz9U3MDNOqcxexCriklpaUpyckargdHhbUXGqlYKjSzAA1vflrCQAAAA&sa=X&ved=2ahUKEwi_pp6S-6uBAxXAh_0HHfISDAcQmxMoAXoECFQQAw",
                      "title": "Deutsche Börse: ADS"
                    }
                  ],
                  "title": "Beurs",
                  "content": "Deutsche Börse: ADS"
                }
              ],
              "subtitle": "Empresa",
              "description": "Adidas AG es una multinacional alemana, fundada y con sede en Herzogenaurach, Alemania, que diseña y fabrica calzado, ropa y accesorios. Es el mayor fabricante de ropa deportiva de Europa y el segundo del mundo, después de Nike.",
              "related_searches": [
                {
                  "url": "/search?sca_esv=565570927&gl=nl&hl=nl&q=Nike&si=ALGXSlZS0YT-iRe81F2cKC9lM9KWTK4y0m5Atx8g9YliNNw2mQ1KNk4tlt4bFDSc4NSQLjoQ-vCfp5VZjzAXWikRLPCiUPiH-mOH7_cmQFsmf2z83S2EU2EOpnBI8OdBJXAiGRnoX0ydR5k-eMMITDBqkFZ9mrJ6UwS_U63P0J1T-oSWGmQQ6GNH5ccal-6QMsHpIrNROn0BGlDTfD6GarlvzXqNi-CRVT4R20kaKPvTWmsRRH8JeiMRyMX8Ex7aYsJr1iVLszn5EKHqZtj_rlGyxItbVDzNKQ%3D%3D&sa=X&ved=2ahUKEwi_pp6S-6uBAxXAh_0HHfISDAcQxA16BAhMEAU",
                  "title": "Nike",
                  "section_title": "La gente también busca"
                },
                {
                  ...
                },
                {
                  "url": "/search?sca_esv=565570927&gl=nl&hl=nl&q=Reebok&si=ALGXSlYh1-GEPndq7qMo--O-TPixQtNN4JMroSxgItz5kq0stLoU8Q_ZNH58zk1o0S-SXC9cxPPLJ78Mz2ie2KaCE9G4Q9yl23tVTaG5rRyKrfdJYzV29xX2O0Ik23POfs_d81weX8VaRe4_cf3ZkyFOYvw82PyxsqmS3GF_fXwBBLjbODPEQax0Nf1q1GBTsXoAxeHLAWmsGguZMB4xwAD_4A-e3B0Vy5_5zC7tmLq8SoPlqlgtHN1WvxQ2KxwtpeMFaXU7Mqw53TMR-P6mKadGD8EKqGlbZXtA73qUWORpELm1VjLvg2Q%3D&sa=X&ved=2ahUKEwi_pp6S-6uBAxXAh_0HHfISDAcQxA16BAhMEAs",
                  "title": "Reebok",
                  "section_title": "La gente también busca"
                }
              ]
            },
            "navigation": [
              {
                "pos": 1,
                "url": "/search?sca_esv=565570927&gl=nl&hl=nl&q=adidas&tbm=isch&source=lnms&sa=X&ved=2ahUKEwi_pp6S-6uBAxXAh_0HHfISDAcQ0pQJegQIDhAB",
                "title": "Imágenes"
              },
              {
                ...
              }
            ],
            "instant_answers": [
              {
                "type": "unknown",
                "_parsed": false,
                "pos_overall": 4
              }
            ],
            "related_searches": {
              "pos_overall": 11,
              "related_searches": [
                "adidas schoenen",
                "adidas voetbalschoenen",
                "adidas yeezy",
                "adidas originals",
                "adidas wiki",
                "adidas slippers",
                "adidas store",
                "adidas superstar"
              ]
            },
            "search_information": {
              "query": "adidas",
              "showing_results_for": "adidas",
              "total_results_count": 1110000000
            },
            "total_results_count": 1110000000
          },
          "last_visible_page": -1,
          "parse_status_code": 12000
        },
        "created_at": "2023-09-15 06:13:50",
        "updated_at": "2023-09-15 06:13:52",
        "page": 1,
        "url": "https://www.google.nl/search?q=adidas&uule=w+CAIQICILbmV0aGVybGFuZHM&gl=nl&hl=nl",
        "job_id": "7108332062523787265",
        "status_code": 200,
        "parser_type": ""
      }
    ]
  }
```

</details>

## Diccionario de salida

`google_ads` la salida incluye campos como URL, page, results y más. La tabla siguiente presenta una lista detallada de cada elemento de Ads Max que analizamos, incluida la descripción, el tipo de dato y los metadatos relevantes.

{% hint style="info" %}
El número de elementos y campos de un tipo de resultado específico puede variar según la consulta de búsqueda.
{% endhint %}

<table><thead><tr><th width="250">Nombre de la clave</th><th width="414">Descripción</th><th>Tipo</th></tr></thead><tbody><tr><td><code>url</code></td><td>La URL de la página de resultados de búsqueda de Google.</td><td>cadena</td></tr><tr><td><code>page</code></td><td>Número de página.</td><td>entero</td></tr><tr><td><code>results</code></td><td>Un objeto que contiene todos los tipos de resultados de búsqueda.</td><td>objeto</td></tr><tr><td><code>results.paid</code></td><td>Lista de resultados de anuncios de pago con detalles como título, descripción, URL y enlaces de sitio.</td><td>arreglo</td></tr><tr><td><code>results.organic</code></td><td>Lista de resultados orgánicos (no de pago) con título, descripción, URL y enlaces de sitio.</td><td>arreglo</td></tr><tr><td><code>results.images</code></td><td>Resultados del carrusel de imágenes mostrados en la página de búsqueda.</td><td>objeto</td></tr><tr><td><code>results.instant_answers</code></td><td>Funciones especiales o cuadros de respuesta instantánea mostrados en la página.</td><td>arreglo</td></tr><tr><td><code>results.knowledge</code></td><td>Datos del panel de Knowledge Graph, incluidos título, descripción, imágenes, datos curiosos y búsquedas relacionadas.</td><td>objeto</td></tr><tr><td><code>results.navigation</code></td><td>Pestañas de navegación para cambiar entre tipos de búsqueda (Imágenes, Videos, Noticias, etc.).</td><td>arreglo</td></tr><tr><td><code>results.related_searches</code></td><td>Sugerencias de búsquedas relacionadas con sus consultas y posición.</td><td>objeto</td></tr><tr><td><code>results.search_information</code></td><td>Metadatos sobre la búsqueda, incluida la consulta y el recuento total de resultados.</td><td>objeto</td></tr><tr><td><code>results.total_results_count</code></td><td>Número total estimado de resultados para la consulta.</td><td>entero</td></tr><tr><td><code>results.video_boxes</code></td><td>Información del cuadro de video (más detalles <a href="/api-targets/es/search-engines/google/search/search.md#video-box">aquí</a>)</td><td>arreglo</td></tr><tr><td><code>parse_status_code</code></td><td>Código de estado de la operación de análisis.</td><td>entero</td></tr><tr><td><code>creado_en</code></td><td>Marca de tiempo en que se creó el trabajo de scraping.</td><td>marca_de_tiempo</td></tr><tr><td><code>actualizado_en</code></td><td>Marca de tiempo en que se terminó el trabajo de scraping.</td><td>marca_de_tiempo</td></tr><tr><td><code>id_del_trabajo</code></td><td>ID del trabajo asociado con el trabajo de scraping.</td><td>cadena</td></tr><tr><td><code>código_de_estado</code></td><td>Código de estado del trabajo de extracción. Puede ver los códigos de estado del scraper descritos <a href="/products/es/web-scraper-api/response-codes.md">aquí</a>.</td><td>entero</td></tr></tbody></table>


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://developers.oxylabs.io/api-targets/es/search-engines/google/ads.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
