Com o ambiente configurado, pode agora começar a extrair dados dos Vendedores Próximos do Google Shopping utilizando a nossa API. Este é um processo simples e, além do que foi discutido acima, tudo o que precisa de fazer é obter o ID do produto em que está interessado.
Dica: Eis como pode obter o ID de um produto do Google Shopping:
Está agora preparado para começar a extrair dados após configurar o Node.js, obter uma chave API e adquirir um ID de produto. Para prosseguir, crie um novo ficheiro JavaScript ou utilize o criado anteriormente e importe o módulo `https` integrado do Node.js, que lhe permite enviar pedidos para a API, utilizando o seguinte código:
const https = require("https");
Em segundo lugar, tem de especificar a sua chave API e a propriedade product_id do produto em que está interessado:
const API_KEY = "YOUR-API-KEY-HERE" // You can obtain one by registering here
const PRODUCT_ID = "4887235756540435899"
Em seguida, tem de passar esta informação num objeto de opções para que a nossa API saiba qual é o produto que pretende extrair:
const options = {
"method": "GET",
"hostname": "serpapi.webscrapingapi.com",
"port": null,
"path": `/v1?engine=google_product&api_key=${API_KEY}&product_id=${PRODUCT_ID}`,
"headers": {}
};
E, por último, tem de configurar uma chamada à nossa API com todas estas informações:
const req = http.request(options, function (res) {
const chunks = [];
res.on("data", function (chunk) {
chunks.push(chunk);
});
res.on("end", function () {
const body = Buffer.concat(chunks);
const results = JSON.parse(body.toString());
const nearbySellers = results.sellers_results.online_sellers;
console.log(nearbySellers)
});
});
req.end();
Agora, basta executar o script que criou e aguardar os resultados:
$ node scraper.js
E deverá agora receber os seus resultados:
[
{
position: 1,
name: 'Gamestop',
link: 'https://www.google.com/url?q=https://www.gamestop.com/consoles-hardware/playstation-5/consoles/products/sony-playstation-5-digital-edition-console/225171.html%3Futm_source%3Dgoogle%26utm_medium%3Dfeeds%26utm_campaign%3Dunpaid_listings&sa=U&ved=0ahUKEwi27suDvtP8AhVkk2oFHXzfDeMQ2ykIZg&usg=AOvVaw3ZevYyiKByTyo_THSF1qUJ',
additional_details: '460.5 mi · In stock at EulessToday: 10:00 AM - 9:00 PM',
base_price: '$399.99',
additional_price: { shipping: 'See website' },
total_price: '$399.99',
trusted: true
},
{
position: 2,
name: 'Gamestop',
link: 'https://www.google.com/url?q=https://www.gamestop.com/consoles-hardware/playstation-5/consoles/products/sony-playstation-5-digital-edition-console/225171.html%3Futm_source%3Dgoogle%26utm_medium%3Dfeeds%26utm_campaign%3Dunpaid_listings&sa=U&ved=0ahUKEwi27suDvtP8AhVkk2oFHXzfDeMQ2ykIcw&usg=AOvVaw1QiXFtHB6-CApj-HDvbNxl',
additional_details: '462.6 mi · In stock at ArlingtonToday: 11:00 AM - 8:00 PM',
base_price: '',
trusted: false
},
{
position: 3,
name: 'Gamestop',
link: 'https://www.google.com/url?q=https://www.gamestop.com/consoles-hardware/playstation-5/consoles/products/sony-playstation-5-digital-edition-console/225171.html%3Futm_source%3Dgoogle%26utm_medium%3Dfeeds%26utm_campaign%3Dunpaid_listings&sa=U&ved=0ahUKEwi27suDvtP8AhVkk2oFHXzfDeMQ2ykIdg&usg=AOvVaw0CxoqlJzdEZ93B-6U-Jmuf',
additional_details: '557.6 mi · In stock at HoustonToday: 12:00 PM - 9:00 PM',
base_price: '',
trusted: false
},
{
position: 4,
name: 'Gamestop',
link: 'https://www.google.com/url?q=https://www.gamestop.com/consoles-hardware/playstation-5/consoles/products/sony-playstation-5-digital-edition-console/225171.html%3Futm_source%3Dgoogle%26utm_medium%3Dfeeds%26utm_campaign%3Dunpaid_listings&sa=U&ved=0ahUKEwi27suDvtP8AhVkk2oFHXzfDeMQ2ykIeQ&usg=AOvVaw2BAlgtL85g1mvOonMQK14U',
additional_details: '568.6 mi · In stock at PasadenaToday: 12:00 PM - 9:00 PM',
base_price: '',
trusted: false
},
{
position: 5,
name: 'Gamestop',
link: 'https://www.google.com/url?q=https://www.gamestop.com/consoles-hardware/playstation-5/consoles/products/sony-playstation-5-digital-edition-console/225171.html%3Futm_source%3Dgoogle%26utm_medium%3Dfeeds%26utm_campaign%3Dunpaid_listings&sa=U&ved=0ahUKEwi27suDvtP8AhVkk2oFHXzfDeMQ2ykIfA&usg=AOvVaw3mi7jMt3aMSJde0sQb9yjR',
additional_details: '591.2 mi · In stock at San AntonioToday: 12:00 PM - 9:00 PM',
base_price: '',
trusted: false
},
...
]
Conseguiu agora extrair com sucesso os vendedores próximos do Google Product utilizando a nossa API. Pode utilizar os dados obtidos para vários fins, tais como comparação de preços, pesquisa de mercado, otimização de SEO e muito mais. Para mais informações e exemplos de código em outras seis linguagens de programação, consulte a nossa documentação da API do Google Product.