Aprenda como obter dados de páginas de produto do Walmart usando a Web Scraper API. Saiba mais sobre seus parâmetros de requisição e saída de dados estruturados.
O walmart_product source é projetado para recuperar páginas de resultados de produtos do Walmart. Podemos retornar o HTML de qualquer página do Walmart que você desejar. Adicionalmente, podemos fornecer saída estruturada (analisada) para páginas de produtos do Walmart.
Amostras de requisição
O exemplo abaixo ilustra como você pode obter um resultado de página de produto do Walmart analisado.
import requestsfrom pprint import pprint# Estruturar payload.payload ={'source':'walmart_product','product_id':'15296401808','parse':True,}# Obter resposta.response = requests.request('POST','https://realtime.oxylabs.io/v1/queries',auth=('USERNAME','PASSWORD'),json=payload,)# Em vez de resposta com status do job e URL dos resultados, isso retornará o# resposta JSON com o resultado.pprint(response.json())
Você também pode encontrar a página oficial das Lojas Walmart aqui.
Parâmetro
Descrição
Tipo
domínio
Localização de domínio para o Walmart.
String
delivery_zip
Defina o local de envio.
String
store_id
Defina a localização da loja.
String
Se a loja alvo estiver muito longe do código postal fornecido - tentaremos usar o código postal da loja alvo, caso contrário a localização não será definida corretamente. Caso não possamos definir o delivery_zip - O Walmart retornará seus resultados padrão sem direcionamento por loja.
Dados estruturados
Nas seções seguintes, os trechos de código JSON parseado são encurtados quando há mais de um item disponível para o tipo de resultado.
Saída estruturada da página de produto do Walmart
Dicionário de dados de saída
Exemplo em HTML
Estrutura JSON
A tabela abaixo apresenta uma lista detalhada de cada elemento da página de produto que nós analisamos, junto com sua descrição e tipo de dado. A tabela também inclui alguns metadados.
Chave
Descrição
Tipo
geral
Um objeto com detalhes gerais do resultado da página do produto.
object
preço
Objeto contém detalhes sobre preços do produto.
object
rating
Informações de avaliação para o produto.
object
vendedor
Informações sobre o vendedor.
object
variations (opcional)
Lista de variações do produto.
array
breadcrumbs
Hierarquia de categorias que levam ao produto.
object
localização
Fornece informações sobre a localização em que a requisição foi executada.
object
fulfillment
Objeto contém informações sobre opções de atendimento/entrega do produto.
object
specifications
Array de pares chave-valor detalhando atributos ou características específicas do produto.
array
parse_status_code
O código de status do trabalho de parsing. Você pode ver os códigos de status do parser descritos aqui.
integer
created_at
O timestamp quando o trabalho de scraping foi criado.
timestamp
updated_at
O timestamp quando o trabalho de scraping foi finalizado.
timestamp
page
Número da página da qual os dados do produto foram extraídos
integer
url
URL da página do produto no site do Walmart
string
job_id
O ID do job associado ao trabalho de scraping.
string
status_code
O código de status do trabalho de scraping. Você pode ver os códigos de status do scraper descritos aqui.
integer
is_render_forced
Identifica se a renderização foi forçada para esta requisição.
boolean
parser_type
Tipo de parser usado para extrair os dados (por exemplo, "walmart_product_new").
string
Geral
Chave (general)
Descrição
Tipo
url
A URL do produto.
string
main_image
A URL da imagem principal do produto
integer
images
Array de URLs das imagens do produto.
array
title
Título ou nome do produto.
string
description
Descrição detalhada do produto.
string
brand
A marca do produto.
string
badge
Indicador de atributos específicos como promoções, recursos do produto, certificações ou afiliações de marca.
lista de strings
meta
Metadados do produto.
object
meta.sku
Unidade de Manutenção de Estoque (SKU) do produto.
string
meta.gtin
Número Global de Item Comercial (GTIN) do produto.
string
Preço
Chave (price)
Descrição
Tipo
preço
O preço atual do produto sem quaisquer deduções.
float
price_strikethrough
O preço riscado é ou um Was Price, um Bundle Price, ou um List Price.
float
moeda
O código de moeda de três letras ISO 4217 para o preço do produto.
string
Avaliação
Chave (rating)
Descrição
Tipo
rating
Avaliação média do produto.
float
count
Número de avaliações do produto.
integer
Vendedor
Chave (seller)
Descrição
Tipo
name
Nome do vendedor.
string
official_name
Nome registrado oficial da entidade vendedora.
string
id
Identificador único atribuído ao vendedor pela plataforma.
string
url
A URL que leva ao site oficial ou vitrine do vendedor.
string
catalog_id
ID do catálogo.
string
Especificações
Chave (especificações)
Descrição
Tipo
key
Atributo ou característica específica do produto.
string
value
Valor correspondente ou descrição do atributo especificado pela chave de especificações.
string
Atendimento
Chave (fulfillment)
Descrição
Tipo
pickup
Indica se o produto está disponível para atendimento via retirada na loja.
boolean
pickup_information
A mensagem de retirada, quando pickup = true.
string
delivery
Indica se o produto está disponível para ser atendido via entrega a partir da loja local.
boolean
delivery_information
A mensagem de entrega da loja local, quando delivery = true.
string
envio
Indica se o produto está disponível para atendimento via envio para casa.
boolean
shipping_information
A mensagem de envio, se exibida.
string
free_shipping
Indica se o frete é gratuito.
boolean
out_of_stock
Indica se o produto está atualmente fora de estoque.
boolean
Variações
Chave (variações)
Descrição
Tipo
estado
Estado de disponibilidade da variação do produto.
string
product_id
Identificador único para cada variação de produto.
string
selected_options
Array contendo opções selecionadas que definem a variação.
array
selected_options.key
Chave que descreve a opção selecionada.
string
selected_options.value
Valor da opção selecionada.
string
Breadcrumbs
Chave (breadcrumbs)
Descrição
Tipo
category_name
O nome da categoria.
string
url
A URL da categoria
string
Localização
Chave (location)
Descrição
Tipo
city
A cidade em que a requisição foi executada.
string
estado
O estado em que a requisição foi executada.
string
zip_code
O código postal em que a requisição foi executada.
# Toda a string que você enviar precisa estar codificada em URL.
https://realtime.oxylabs.io/v1/queries?source=walmart_product&product_id=15296401808&parse=true&access_token=12345abcde
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 = "walmart_product",
product_id = "15296401808",
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", "walmart_product");
jsonObject.put("product_id", "15296401808");
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();
}
}
{
"results": [
{
"content": {
"price": {
"price": 157.97,
"currency": "USD",
"price_strikethrough": 199.99
},
"rating": {
"count": 94,
"rating": 4.5
},
"seller": {
"id": "ED6F630F4BA94318A00A1D0BAACD0A48",
"url": "/seller/7648?itemId=701606028&pageName=item&returnUrl=%2Fip%2FApple-iPhone-Xs-64GB-Unlocked-GSM-CDMA-4G-LTE-Phone-w-Dual-12MP-Camera-Gold-Fair-Cosmetics-Fully-Functional%2F701606028",
"name": "Kiss Electronics Inc",
"catalog_id": "7648",
"official_name": "Kiss Electronics Inc"
},
"general": {
"url": "https://www.walmart.com/ip/Apple-iPhone-Xs-64GB-Unlocked-GSM-CDMA-4G-LTE-Phone-w-Dual-12MP-Camera-Gold-Fair-Cosmetics-Fully-Functional/701606028",
"meta": {
"sku": "701606028",
"gtin": "683346585136"
},
"badge": "Best seller",
"brand": "Apple",
"title": "Pre-Owned Apple iPhone XS - Carrier Unlocked - 64GB Gold",
"images": [
"https://i5.walmartimages.com/seo/Apple-iPhone-Xs-64GB-Unlocked-GSM-CDMA-4G-LTE-Phone-w-Dual-12MP-Camera-Gold-Fair-Cosmetics-Fully-Functional_d6dacc88-10c1-46e0-b528-c626915adadc.4c6907ee5896ccbc68382cb59470a6d8.jpeg?odnHeight=117&odnWidth=117&odnBg=FFFFFF"
],
"main_image": "https://i5.walmartimages.com/seo/Apple-iPhone-Xs-64GB-Unlocked-GSM-CDMA-4G-LTE-Phone-w-Dual-12MP-Camera-Gold-Fair-Cosmetics-Fully-Functional_d6dacc88-10c1-46e0-b528-c626915adadc.4c6907ee5896ccbc68382cb59470a6d8.jpeg?odnHeight=640&odnWidth=640&odnBg=FFFFFF",
"description": "<p>Super Retina. Em Grande e Maior. Um design toda-tela oferece uma grande e bela tela para tudo o que você ama fazer. OLED personalizado. Os painéis OLED no iPhone Xs permitem uma exibição HDR com a melhor precisão de cores do setor, pretos verdadeiros e brilho e contraste notáveis. São as telas mais nítidas, com a maior densidade de pixels, em qualquer dispositivo Apple. Um novo nível de resistência à água. O vidro mais durável em um smartphone, selado e encaixado com precisão com uma faixa de aço inoxidável grau cirúrgico, ajuda a criar um invólucro mais resistente à água - até 2 metros por 30 minutos. O iPhone Xs até resiste a derramamentos de café, chá, refrigerante e mais. Um nível totalmente novo de inteligência. O A12 Bionic, com nosso Neural Engine de próxima geração, oferece desempenho incrível. Ele usa aprendizado de máquina em tempo real para transformar a forma como você experimenta fotos, jogos, realidade aumentada e mais. Sensores, processadores, algoritmos e você. Um sistema de câmera dupla inovador integra o ISP, o Neural Engine e algoritmos avançados para desbloquear novas possibilidades criativas e ajudar você a capturar fotos incríveis. Uma imagem vale trilhões de operações. O sistema de câmera dupla do iPhone Xs aproveita o poder sem precedentes do Neural Engine e sua capacidade de executar cinco trilhões de operações por segundo. Junto com o ISP projetado pela Apple, ele funciona como o assistente fotográfico mais rápido do mundo para ajudar a transformar suas fotos em destaques. Segurança simplificada. Face ID reinventa a maneira como desbloqueamos, fazemos login e pagamos. Algumas de nossas tecnologias mais sofisticadas - o sistema de câmera TrueDepth, o Secure Enclave e o Neural Engine - o tornam a autenticação facial mais segura já vista em um smartphone. E ainda mais rápido e fácil de usar.</p><ul> <li>O telefone é testado, funciona e está funcional. Pode ter arranhões, riscos, trincas ou outros problemas menores que não afetam a funcionalidade do telefone.</li> <li>Tela sensível ao toque Super AMOLED de 5,8 polegadas, 1125 x 2436 pixels</li> <li>iOS, Apple A12 Bionic, Hexa-Core, GPU Apple (Gráficos de 4 núcleos)</li> <li>Câmeras duplas de 12MP(f/1.8, 28mm, OIS) & 12MP(f/2.4, 52mm, Zoom óptico 2x) com flash Quad-LED Dual-Tone & câmera frontal de 7MP com f/2.2, 32mm</li> <li>Memória interna: 64GB, 4GB RAM</li> <li>Resistente à poeira/água IP68 (até 2m por 30 minutos), vidro resistente a arranhões, revestimento oleofóbico</li> <li>Dimensões: 5,65 x 2,79 x 0,30 polegadas, Peso: 6,24 oz</li> </ul>"
},
"location": {
"city": "Sacramento",
"state": "CA",
"store_id": "3081",
"zip_code": "95829"
},
"variations": [
{
"state": "IN_STOCK",
"product_id": "7328JAQF0Y2S",
"selected_options": [
{
"key": "Carrier",
"value": "Verizon"
},
{
"key": "Capacity",
"value": "256GB"
},
{
"key": "Color",
"value": "Desert Titanium"
}
]
},
"breadcrumbs": [
{
"url": "/cp/cell-phones/1105910",
"category_name": "Cell Phones"
},
{
"url": "/cp/unlocked-phones/1073085",
"category_name": "Unlocked Phones"
},
{
"url": "/cp/gsm-unlocked/8230659",
"category_name": "GSM Unlocked"
}
],
"fulfillment": {
"pickup": false,
"delivery": false,
"shipping": true,
"out_of_stock": false,
"free_shipping": true,
"pickup_information": "Pickup, Not available",
"delivery_information": "Delivery, Not available",
"shipping_information": "Shipping, Arrives Oct 18, Free"
},
"specifications": [
{
"key": "Processor Brand",
"value": "Apple"
},
{
"key": "Display Technology",
"value": "Retina Display"
},
{
"key": "Phone Feature",
"value": "Wireless Charging"
},
...
],
"parse_status_code": 12000
},
"created_at": "2024-09-16 08:09:03",
"updated_at": "2024-09-16 08:09:06",
"page": 1,
"url": "https://www.walmart.com//ip/Apple-iPhone-Xs-64GB-Unlocked-GSM-CDMA-4G-LTE-Phone-w-Dual-12MP-Camera-Gold-Fair-Cosmetics-Fully-Functional/701606028",
"job_id": "7253339040034008521",
"is_render_forced": false,
"status_code": 200,
"parser_type": "walmart_product_new"
}
]
}