环境配置完成后,您现在可以使用我们的 API 开始抓取 Google 购物“附近商家”数据。这是一个简单的过程,除了上述内容外,您只需获取您感兴趣的商品的商品 ID 即可。
提示:以下是从 Google 购物中获取商品 ID 的方法:
完成 Node.js 安装、获取 API 密钥并获取商品 ID 后,您已准备好开始抓取。接下来,请创建一个新的 JavaScript 文件或使用之前创建的文件,并导入 Node.js 内置的 `https` 模块(该模块可用于向 API 发送请求),具体代码如下:
const https = require("https");
其次,您需要指定您的 API 密钥以及目标商品的 `product_id` 属性:
const API_KEY = "YOUR-API-KEY-HERE" // You can obtain one by registering here
const PRODUCT_ID = "4887235756540435899"
接下来,您需要将这些信息作为选项对象传递,以便让我们的 API 知道您要抓取的是哪款商品:
const options = {
"method": "GET",
"hostname": "serpapi.webscrapingapi.com",
"port": null,
"path": `/v1?engine=google_product&api_key=${API_KEY}&product_id=${PRODUCT_ID}`,
"headers": {}
};
最后,您需要使用所有这些信息设置对 API 的调用:
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();
现在您只需执行创建的脚本并等待结果即可:
$ node scraper.js
此时您应已收到结果:
[
{
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
},
...
]
您现已成功通过我们的 API 抓取了 Google 产品“附近卖家”数据。您可以将获取的数据用于价格比较、市场调研、SEO 优化等多种用途。如需了解更多信息以及其他六种编程语言的代码示例,欢迎查阅我们的 Google 产品 API 文档。