# Ads Max

O `google_ads` source está otimizado para recuperar resultados da Pesquisa Google (SERPs) e do Google AI Overviews com anúncios pagos em um **taxa máxima de anúncios**. A source retornará apenas dez resultados por página, garantindo as maiores chances de resultados pagos aparecerem. Fora isso, ele suporta os mesmos parâmetros que o regular [**Web** **Pesquisa**](https://github.com/oxylabs/gitbook-public-english/blob/master/scraping-solutions/web-scraper-api/targets/google/broken-reference/README.md).

## Exemplos de solicitação

Neste exemplo, fazemos uma solicitação para recuperar resultados de pesquisa para a palavra-chave `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


# Estruture o payload.
payload = {
    'source': 'google_ads',
    'query': 'adidas',
    'parse': True
}


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

# Imprima a resposta formatada em 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 o método de integração [**Realtime**](/products/pt-br/web-scraper-api/integration-methods/realtime.md) síncrona em nossos exemplos. Se você quiser usar [**Proxy Endpoint**](/products/pt-br/web-scraper-api/integration-methods/proxy-endpoint.md) ou a integração assíncrona [**Push-Pull**](/products/pt-br/web-scraper-api/integration-methods/push-pull.md) , consulte a seção [**métodos de integração**](/products/pt-br/web-scraper-api/integration-methods.md) .

## Valores dos parâmetros da solicitação

### Genérico

Opções básicas de configuração e personalização para raspar anúncios do Google.

<table><thead><tr><th width="222">Parâmetro</th><th width="350.3333333333333">Descrição</th><th>Valor padrão</th></tr></thead><tbody><tr><td><mark style="background-color:green;"><strong>source</strong></mark></td><td>Define o scraper.</td><td><code>google_ads</code></td></tr><tr><td><mark style="background-color:green;"><strong>query</strong></mark></td><td>A palavra-chave ou frase para pesquisar.</td><td>-</td></tr><tr><td><code>render</code></td><td>Habilita a renderização de JavaScript quando definido como <code>html</code>. <a href="/spaces/OBEE5GAZ3BuoLyZVZDxR/pages/3233bca1879be403b915f4b370f405d36a5941e9#javascript-rendering"><strong>Mais informações</strong></a><strong>.</strong></td><td>-</td></tr><tr><td><code>parse</code></td><td>Retorna dados analisados quando definido como <code>true</code>. Explore a saída <a href="#output-data-dictionary"><strong>dicionário de dados</strong></a>.</td><td><code>false</code></td></tr><tr><td><code>callback_url</code></td><td>URL para seu endpoint de callback. <a href="/spaces/OBEE5GAZ3BuoLyZVZDxR/pages/f8ca26d94a776244a1a6f4d756ea5f2840b96d85"><strong>Mais informações</strong></a></td><td>-</td></tr><tr><td><code>user_agent_type</code></td><td>Tipo de dispositivo e navegador. A lista completa pode ser encontrada <a href="/spaces/OBEE5GAZ3BuoLyZVZDxR/pages/8bd3ad6c17b2bc99727ff7015e9ec2fe3745e22c"><strong>aqui</strong></a>.</td><td><code>desktop</code></td></tr></tbody></table>

&#x20;   \- parâmetro obrigatório

### Localização

Adapte os resultados de busca para locais geográficos e idiomas específicos.

<table><thead><tr><th width="222">Parâmetro</th><th width="350.3333333333333">Descrição</th><th>Valor padrão</th></tr></thead><tbody><tr><td><code>geo_location</code></td><td>A localização geográfica para a qual o resultado deve ser adaptado. Usar este parâmetro corretamente é extremamente importante para obter os dados certos. Para mais informações, leia sobre nossas <code>geo_location</code> estruturas de parâmetros <a href="/spaces/OBEE5GAZ3BuoLyZVZDxR/pages/97e9eae2fb35538ed9515ec3ade8adafbcf468e4#google"><strong>aqui</strong></a><strong>.</strong></td><td>-</td></tr><tr><td><code>locale</code></td><td><code>valor do cabeçalho</code> Accept-Language <a href="/spaces/OBEE5GAZ3BuoLyZVZDxR/pages/8f87e4b64bbb69f35a75da02cf71929fb386f857#google"><strong>Mais informações</strong></a>.</td><td>-</td></tr></tbody></table>

### Paginação

Controles para gerenciar a paginação e a recuperação dos resultados da pesquisa.

<table><thead><tr><th width="222">Parâmetro</th><th width="350.3333333333333">Descrição</th><th width="167">Valor padrão</th></tr></thead><tbody><tr><td><code>start_page</code></td><td>Número da página inicial.</td><td><code>1</code></td></tr><tr><td><code>pages</code></td><td>Número de páginas para recuperar.</td><td><code>1</code></td></tr></tbody></table>

### Filtragem

Opções para filtrar e refinar os resultados de busca com base em vários critérios.

<table><thead><tr><th width="245">Parâmetro</th><th width="350.3333333333333">Descrição</th><th>Valor padrão</th></tr></thead><tbody><tr><td><p><code>context</code>:</p><p><code>udm</code></p></td><td><code>udm</code> o parâmetro permite alternar entre diferentes abas de pesquisa, como imagens, locais ou vídeos, para personalizar o tipo de resultados exibidos. Encontre os valores aceitos <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>aqui</strong></a>.</td><td>-</td></tr><tr><td><code>context</code>:<br><code>tbm</code></td><td>To-be-matched ou <code>tbm</code> parâmetro. Os valores aceitos são: <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>context</code>:<br><code>tbs</code></td><td><code>tbs</code> parâmetro. Esse parâmetro funciona como um contêiner para outros parâmetros menos óbvios do Google, como limitar/ordenar resultados por data, além de outros filtros, alguns dos quais dependem do <code>tbm</code> (por exemplo, <code>tbs=app_os:1</code> só está disponível com o valor <code>tbm</code> ). Mais informações <code>app</code>. <a href="https://stenevang.wordpress.com/2013/02/22/google-advanced-power-search-url-request-parameters/"><strong>aqui</strong></a>.</td><td>-</td></tr></tbody></table>

### Outros

Configurações e controles avançados adicionais para requisitos especializados.

<table><thead><tr><th width="222">Parâmetro</th><th width="350.3333333333333">Descrição</th><th>Valor padrão</th></tr></thead><tbody><tr><td><code>context</code>:<br><code>nfpr</code></td><td><code>true</code> desativará a autocorreção ortográfica</td><td><code>false</code></td></tr></tbody></table>

### Parâmetros de contexto

Todos os parâmetros de contexto devem ser adicionados ao array `context` como objetos com pares `key` e `). Mais informações` , por exemplo:

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

## Exemplo de saída

<details>

<summary><code>google_ads</code> saída estruturada</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": "Histórias, looks e roupas esportivas da adidas® desde 1949. Descubra a loja oficial da adidas®. Seja para praticar esportes ou relaxar, dê um impulso ao seu desempenho e estilo na loja da adidas®.",
                "title": "Loja oficial adidas® - Clássicos e itens exclusivos",
                "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® Feminino"
                    },
                    {
                      ...
                    }
                  ]
                },
                "url_shown": "https://www.adidas.nl",
                "pos_overall": 10
              }
            ],
            "images": {
              "items": [
                {
                  "alt": "Tênis adidas Forum Low - Branco | Loja Oficial adidas",
                  "pos": 1,
                  "source": "https://www.adidas.nl/forum-low-schoenen/FY7756.html"
                },
                {
                  ...
                }
              ],
              "pos_overall": 5
            },
            "organic": [
              {
                "pos": 1,
                "url": "https://www.adidas.nl/",
                "desc": "Loja esportiva para tênis e roupas adidas. Compre, entre outros, produtos Originals, Futebol, Corrida e academia no site oficial da adidas NL.",
                "title": "Site Oficial adidas Holanda | Loja Esportiva",
                "sitelinks": {
                  "expanded": [
                    {
                      "url": "https://www.adidas.nl/outlet",
                      "title": "Outlet"
                    },
                    {
                      ...
                    },
                    {
                      "url": "https://www.adidas.nl/kinderen",
                      "title": "Crianças"
                    }
                  ]
                },
                "url_shown": "https://www.adidas.nl",
                "pos_overall": 1
              },
              {
                ...
              },
              {
                "pos": 7,
                "url": "https://www.jdsports.nl/merk/adidas-originals/",
                "desc": "A coleção completa adidas Originals na JD Sports Holanda. Agasalho adidas Originals, chinelos e tênis em cores exclusivas.",
                "title": "Agasalho adidas Originals, chinelos e tênis preto e ...",
                "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": "Preço das ações"
                    },
                    {
                      ...
                    }
                  ],
                  "title": "Preço das ações",
                  "content": "ADS (ETR) € 170,90 -0,20 (-0,12%)14 sep 17:43 CEST - Aviso legal"
                },
                {
                  ...
                },
                {
                  "links": [
                    {
                      "href": "/search?sca_esv=565570927&gl=nl&hl=nl&q=adidas+beurs&sa=X&ved=2ahUKEwi_pp6S-6uBAxXAh_0HHfISDAcQ6BMoAHoECFQQAg",
                      "title": "Bolsa"
                    },
                    {
                      "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": "Bolsa",
                  "content": "Deutsche Börse: ADS"
                }
              ],
              "subtitle": "Empresa",
              "description": "A Adidas AG é uma multinacional alemã, fundada e sediada em Herzogenaurach, Alemanha, que projeta e fabrica calçados, roupas e acessórios. É a maior fabricante de roupas esportivas da Europa e a segunda maior do mundo, depois da 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": "As pessoas também pesquisam"
                },
                {
                  ...
                },
                {
                  "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": "As pessoas também pesquisam"
                }
              ]
            },
            "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": "Imagens"
              },
              {
                ...
              }
            ],
            "instant_answers": [
              {
                "type": "desconhecido",
                "_parsed": false,
                "pos_overall": 4
              }
            ],
            "related_searches": {
              "pos_overall": 11,
              "related_searches": [
                "tênis adidas",
                "chuteiras adidas",
                "adidas yeezy",
                "adidas originals",
                "adidas wiki",
                "chinelos adidas",
                "loja adidas",
                "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>

## Dicionário de saída

`google_ads` A saída inclui campos como URL, page, results e muito mais. A tabela abaixo apresenta uma lista detalhada de cada elemento do Google Ads Max que analisamos, incluindo descrição, tipo de dados e metadados relevantes.

{% hint style="info" %}
O número de itens e campos para um tipo de resultado específico pode variar dependendo da consulta de pesquisa.
{% endhint %}

<table><thead><tr><th width="250">Nome da chave</th><th width="414">Descrição</th><th>Tipo</th></tr></thead><tbody><tr><td><code>url</code></td><td>A URL da página de resultados de pesquisa do Google.</td><td>string</td></tr><tr><td><code>page</code></td><td>Número da página.</td><td>integer</td></tr><tr><td><code>resultados</code></td><td>Um objeto contendo todos os tipos de resultados de pesquisa.</td><td>object</td></tr><tr><td><code>results.paid</code></td><td>Lista de resultados de anúncios pagos com detalhes como título, descrição, URL e sitelinks.</td><td>array</td></tr><tr><td><code>results.organic</code></td><td>Lista de resultados orgânicos (não pagos) com título, descrição, URL e sitelinks.</td><td>array</td></tr><tr><td><code>results.images</code></td><td>Resultados do carrossel de imagens exibidos na página de pesquisa.</td><td>object</td></tr><tr><td><code>results.instant_answers</code></td><td>Recursos especiais ou caixas de resposta instantânea exibidas na página.</td><td>array</td></tr><tr><td><code>results.knowledge</code></td><td>Dados do painel do Knowledge Graph, incluindo título, descrição, imagens, factoids e pesquisas relacionadas.</td><td>object</td></tr><tr><td><code>results.navigation</code></td><td>Abas de navegação para alternar entre tipos de pesquisa (Imagens, Vídeos, Notícias etc.).</td><td>array</td></tr><tr><td><code>results.related_searches</code></td><td>Sugestões de pesquisas relacionadas com suas consultas e posição.</td><td>object</td></tr><tr><td><code>results.search_information</code></td><td>Metadados sobre a pesquisa, incluindo a consulta e a contagem total de resultados.</td><td>object</td></tr><tr><td><code>results.total_results_count</code></td><td>Número total estimado de resultados para a consulta.</td><td>integer</td></tr><tr><td><code>results.video_boxes</code></td><td>Informações da caixa de vídeo (mais detalhes <a href="/pages/b2214cbbb580271e42a5b114203f33d01beb5cc0#video-box">aqui</a>)</td><td>array</td></tr><tr><td><code>parse_status_code</code></td><td>Código de status da operação de análise.</td><td>integer</td></tr><tr><td><code>created_at</code></td><td>Timestamp em que o trabalho de scraping foi criado.</td><td>timestamp</td></tr><tr><td><code>updated_at</code></td><td>Timestamp em que o trabalho de scraping foi concluído.</td><td>timestamp</td></tr><tr><td><code>job_id</code></td><td>ID do trabalho associado ao trabalho de scraping.</td><td>string</td></tr><tr><td><code>status_code</code></td><td>Código de status do trabalho de scraping. Você pode ver os códigos de status do scraper descritos <a href="/spaces/OBEE5GAZ3BuoLyZVZDxR/pages/cf91d7149e405b57b58d8fe0f23e7c462350ab82">aqui</a>.</td><td>integer</td></tr></tbody></table>


---

# Agent Instructions: 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:

```
GET https://developers.oxylabs.io/api-targets/pt-br/mecanismos-de-busca/google/ads.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
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.
