> 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/e-commerce/amazon/url.md).

# URL

Extrae páginas de Amazon por URL con Web Scraper API. Ejemplos de solicitud, salida analizada, renderizado JS, geolocalización y opciones de user agent documentadas.

La `amazon` source está diseñado para recuperar el contenido de varias URL de Amazon. Esto significa que, en lugar de enviar varios parámetros, puede proporcionarnos una URL directa a la página de Amazon requerida. No eliminamos ningún parámetro ni alteramos sus URL de ninguna otra manera.

## Ejemplos de solicitud

En los ejemplos de código de abajo, hacemos una solicitud para recuperar la página de producto de Amazon para ASIN `B08Y6Z944Q`.

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

```shell
curl 'https://realtime.oxylabs.io/v1/queries' \\
--user 'USERNAME:PASSWORD' \\
-H 'Content-Type: application/json' \\
-d '{
        "source": "amazon", 
        "url": "https://www.amazon.co.uk/dp/B08Y6Z944Q/",
        "parse": true
    }'
```

{% endtab %}

{% tab title="Python" %}

```python
import requests
from pprint import pprint


# Estructura del payload.
payload = {
    'source': 'amazon',
    'url': 'https://www.amazon.co.uk/dp/B08Y6Z944Q/',
    'parse': True
}

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

# Instead of response with job status and results url, this will return the
# Respuesta JSON con resultados.
pprint(response.json())
```

{% endtab %}

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

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

const username = "USERNAME";
const password = "PASSWORD";
const body = {
    source: "amazon",
    url: "https://www.amazon.co.uk/dp/B08Y6Z944Q/",
    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=amazon&url=https%3A%2F%2Fwww.amazon.co.uk%2Fdp%2FB08Y6Z944Q%2F&parse=true&access_token=12345abcde
```

{% endtab %}

{% tab title="PHP" %}

```php
<?php

$params = array(
    'source' => 'amazon',
    'url' => 'https://www.amazon.co.uk/dp/B08Y6Z944Q/',
    '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": "amazon",
		"url":    "https://www.amazon.co.uk/dp/B08Y6Z944Q/",
		"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 = "amazon",
                url = "https://www.amazon.co.uk/dp/B08Y6Z944Q/",
                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", "amazon");
        jsonObject.put("url", "https://www.amazon.co.uk/dp/B08Y6Z944Q/");
        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": "amazon", 
    "url": "https://www.amazon.co.uk/dp/B08Y6Z944Q/",
    "parse": true
}
```

{% endtab %}
{% endtabs %}

<details>

<summary>Ejemplo de salida</summary>

```json
{
    "results": [
        {
            "content": {
                "ads": [
                    {
                        "pos": 1,
                        "asin": "B0CH3JJN66",
                        "type": "organic_also_viewed",
                        "price": 375,
                        "title": "Samsung TV inteligente de 55 pulgadas AU7020 UHD HDR 4K (2023) - TV inteligente Crystal UHD 4K con imagen HDR, sonido adaptativo Lite, PurColour ",
                        "images": [
                            "https://m.media-amazon.com/images/I/71Dxs5msCcL._AC_SS57_.jpg",
                            "https://m.media-amazon.com/images/I/61rH38KyMnL.jpg",
                            "https://m.media-amazon.com/images/I/71xvR9thu1L.jpg"
                        ],
                        "rating": 4.5,
                        "location": "carousel",
                        "price_upper": 375,
                        "reviews_count": 45,
                        "is_prime_eligible": true
                    },
                    {
                        "pos": 2,
                        "asin": "B0BW9RPQPW",
                        "type": "organic_also_viewed",
                        "price": 362,
                        "title": "TV inteligente de 50 pulgadas CU7110 UHD HDR (2023) - Procesador Crystal 4K, audio Adaptive Sound, PurColour, centro de TV para juegos integrado, Strea",
                        "images": [
                            "https://m.media-amazon.com/images/I/81eKwOlfhTL._AC_SS57_.jpg",
                            "https://m.media-amazon.com/images/I/619tbh+PSSL.jpg",
                            "https://m.media-amazon.com/images/I/81iuMoHZWhL.jpg"
                        ],
                        "rating": 4.5,
                        "location": "carousel",
                        "price_upper": 362,
                        "reviews_count": 45,
                        "is_prime_eligible": true
                    },
                    {...}
                ],
                "url": "https://www.amazon.co.uk/dp/B08Y6Z944Q/",
                "asin": "B08Y6Z944Q",
                "page": 1,
                "brand": "Samsung",
                "price": 0,
                "stock": "",
                "title": "Samsung AU7100 de 50 pulgadas (2021) – TV inteligente Crystal 4K con calidad de imagen HDR10+, sonido adaptativo, imagen Motion Xcelerator, audio Samsung Q-Symphony y modo de juego - UE50AU7100KXXU",
                "coupon": "",
                "images": [
                    "https://m.media-amazon.com/images/I/71Urp17dnYL._AC_SL1500_.jpg",
                    ...
                    "https://m.media-amazon.com/images/I/51yb9wscZTL._AC_SL1500_.jpg"
                ],
                "rating": 4.5,
                "category": [
                    {
                        "ladder": [
                            {
                                "url": "/tv-bluray-dvd-home-cinema/b/ref=dp_bc_aui_C_1?ie=UTF8&node=560858",
                                "name": "Cine en casa, TV y vídeo"
                            },
                            {
                                "url": "/LED-Smart-4K-TVs/b/ref=dp_bc_aui_C_2?ie=UTF8&node=560864",
                                "name": "Televisores"
                            }
                        ]
                    }
                ],
                "currency": "GBP",
                "delivery": [],
                "_warnings": [
                    "No se pudo analizar el número de precios.",
                    "No se pudo analizar el precio.",
                    "No se pudo analizar la descripción."
                ],
                "page_type": "Producto",
                "price_sns": 0,
                "variation": [
                    {
                        "asin": "B08Y7182XL",
                        "selected": false,
                        "dimensions": {
                            "Size Name": "85\""
                        }
                    },
                    {
                        "asin": "B08Y733RV1",
                        "selected": false,
                        "dimensions": {
                            "Size Name": "43\""
                        }
                    },
                    {...}
                ],
                "has_videos": true,
                "sales_rank": [
                    {
                        "rank": 28405,
                        "ladder": [
                            {
                                "url": "/gp/bestsellers/electronics/ref=pd_zg_ts_electronics",
                                "name": "Electrónica y fotografía"
                            }
                        ]
                    },
                    {
                        "rank": 479,
                        "ladder": [
                            {
                                "url": "/gp/bestsellers/electronics/560864/ref=pd_zg_hrsr_electronics",
                                "name": "Televisores"
                            }
                        ]
                    }
                ],
                "top_review": "Es un televisor excelente para su precio, con una imagen fantástica, especialmente en los servicios de streaming, que es lo que vemos la mayor parte del tiempo. Primero leí muchas reseñas profesionales en línea, todas lo calificaban muy alto, y no me decepcionó. Hay bastante configuración que hacer y tuve que ajustar algunos parámetros para obtener la mejor imagen. Al principio la imagen estaba demasiado oscura, especialmente en Amazon Prime. Parece que este es un problema particular de Prime. Obtuve una imagen mucho mejor al desactivar \"Brightness Optimisation\". Tampoco nos gustó el efecto \"ultra real\" que se obtiene con los televisores LED 4K. Cambiar a \"Filmmaker Mode\" solucionó esto. La calidad del sonido está bien, pero de todos modos usamos una barra de sonido. Me gustan especialmente los dos mandos a distancia que vienen con el televisor. Hay un mando tradicional con muchos botones: al principio lo usé para configurar todo, incluida la gestión del reproductor BluRay y la barra de sonido. Una vez que todo funcionaba, cambié al mando más pequeño, que solo tiene los botones más esenciales, pero tiene un aspecto y un tacto más refinados y un clic de los botones mejor que su hermano mayor. Ver la TV terrestre también está bien, aunque no tan bien como los servicios de streaming. No somos jugadores, así que no puedo opinar sobre esa calidad. En conjunto, un gran televisor y una ganga.\n  \nLeer más",
                "asin_in_url": "B08Y6Z944Q",
                "description": "",
                "parent_asin": "B09DLFS6JN",
                "price_upper": 0,
                "pricing_str": "",
                "pricing_url": "https://www.amazon.co.uk/gp/offer-listing/B08Y6Z944Q?startIndex=0",
                "manufacturer": "Samsung",
                "price_buybox": -1,
                "product_name": "Samsung AU7100 de 50 pulgadas (2021) – TV inteligente Crystal 4K con calidad de imagen HDR10+, sonido adaptativo, imagen Motion Xcelerator, audio Samsung Q-Symphony y modo de juego - UE50AU7100KXXU",
                "bullet_points": "Excelencia en entretenimiento en el hogar con el AU7100 – Un televisor inteligente Ultra HD que lo ofrece todo; el televisor inteligente Samsung AU7100 de 50 pulgadas combina imágenes impresionantes, colores vibrantes, audio nítido y un diseño slim fit llamativo para mejorar su espacio vital.\nObtenga una imagen potente con 4K impresionante – Su televisor inteligente de 50 pulgadas incluye Dynamic Crystal Colour y un Contrast Enhancer, para que pueda ver todos sus programas favoritos con un detalle 4K impresionante, con colores más vivos y un contraste que ofrece una imagen más clara.\nExperimente la perfección del audio con Adaptive Sound en su televisor: su televisor Samsung ajusta el sonido en cada escena a lo que aparece en pantalla, para que sienta que forma parte de la acción. Q-Symphony permite una experiencia cinematográfica cuando añade una barra de sonido Samsung.\nMejore la configuración de su oficina o sumérjase en el juego con su televisor Samsung – PC on TV le permite acceder de forma remota a su PC de oficina desde su televisor inteligente, para que pueda hacerlo todo directamente desde su salón. Nuestro televisor inteligente también ofrece un modo de juego inmersivo.\nEmpiece a disfrutar de los televisores Samsung - Creemos que un televisor es más que algo que usted ve. Debe inspirar, sorprender, envolverlo y sumergirlo. Desde la calidad de la imagen hasta un diseño elegante, nuestros televisores amplían los límites de lo que es posible y de lo que puede ser un televisor.",
                "price_initial": 0,
                "pricing_count": 1,
                "reviews_count": 2067,
                "sns_discounts": [],
                "developer_info": [],
                "price_shipping": 0,
                "product_details": {
                    "asin": "B08Y6Z944Q",
                    "batteries": "2 AAA batteries required. (included)",
                    "manufacturer": "Samsung",
                    "item_model_number": "UE50AU7100KXXU",
                    "product_dimensions": "5.99 x 111.68 x 64.42 cm; 11.4 kg",
                    "date_first_available": "2 mar. 2021"
                },
                "featured_merchant": [],
                "is_prime_eligible": false,
                "parse_status_code": 12005,
                "product_dimensions": "5.99 x 111.68 x 64.42 cm; 11.4 kg",
                "answered_questions_count": 0,
                "rating_stars_distribution": [
                    {
                        "rating": 5,
                        "percentage": 74
                    },
                    {
                        "rating": 4,
                        "percentage": 15
                    },
                    {...}
                ]
            },
            "created_at": "2024-07-01 10:35:28",
            "updated_at": "2024-07-01 10:35:32",
            "page": 1,
            "url": "https://www.amazon.co.uk/dp/B08Y6Z944Q/",
            "job_id": "7213490386797350913",
            "status_code": 200,
            "parser_type": ""
        }
    ]
}
```

</details>

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

Opciones básicas de configuración y personalización para extraer URL 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>amazon</code></td></tr><tr><td><mark style="background-color:green;"><strong>url</strong></mark></td><td>URL directa (enlace) a la página de Amazon</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><strong>.</strong> Limitado a URL de tipos específicos de <a href="/products/es/web-scraper-api/features/custom-parser.md"><strong>páginas de Amazon</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

Adapte los resultados a ubicaciones geográficas e idiomas específicos.

| Parámetro      | Descripción                                                                                                                                                                                               | Valor predeterminado |
| -------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------- |
| `geo_location` | La *Entregar a* ubicación. Consulte nuestra guía para usar este parámetro [**aquí**](/products/es/web-scraper-api/features/localization/proxy-location.md#list-of-supported-geo_location-values).         | -                    |
| `locale`       | `Accept-Language` valor del encabezado, que establece el idioma de la interfaz de la página de Amazon. [**Más información**](/products/es/web-scraper-api/features/localization/domain-locale.md#amazon). | -                    |

{% hint style="warning" %}
**IMPORTANTE:** En la mayoría de los tipos de página, Amazon adapta los resultados devueltos según la ubicación de entrega de sus clientes. Por lo tanto, aconsejamos usar el `geo_location` parámetro para establecer su ubicación de entrega preferida. Puede leer más sobre el uso de `geo_location` con Amazon [**aquí**](broken://pages/f737df7296bc5ca683c1fd8faf1f0115ddce1385).
{% endhint %}

### Otros

Configuraciones y controles avanzados adicionales para requisitos especializados.

| Parámetro                                            | Descripción                                                                                                                                                                                                                                                             | Valor predeterminado                                                                                                                                                                                                                                                            |
| ---------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| <p><code>contexto</code>:<br><code>moneda</code></p> | Establece la moneda. Consulte los valores disponibles [**aquí**](https://files.gitbook.com/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FzrXw45naRpCZ0Ku9AjY1%2Fuploads%2FNNybEQaVnTrc9ymR1NGE%2Fcurrency_new.json?alt=media\&token=a77440f9-50a5-4e07-9993-b2db2144800b). | Depende del marketplace. Consulte los valores predeterminados [**aquí**](https://files.gitbook.com/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FzrXw45naRpCZ0Ku9AjY1%2Fuploads%2FNNybEQaVnTrc9ymR1NGE%2Fcurrency_new.json?alt=media\&token=a77440f9-50a5-4e07-9993-b2db2144800b). |


---

# 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/e-commerce/amazon/url.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.
