首页 > 解决方案 > 如何从网站解析有关某些产品的信息(使用 node.js)?

问题描述

我需要从网站解析信息,例如 adidas.com。我对这款运动鞋之类的产品信息很感兴趣。我如何获得特定产品的成本、图片、名称和图片等信息。

产品示例

我尝试将 Node.js 与 Cheerio 和 request 等模块一起使用,但服务器没有提供任何信息。

console.log('In progress!');
const request =  require('request')
const cheerio = require('cheerio');

request('https://www.adidas.com/api/search/product/FY1159?sitePath=us', (error, response, html) => {
if (!error && response.statusCode == 200){
    console.log(html);
}
});

没有来自服务器的信息

标签: node.jsparsingrequestcheerio

解决方案


听起来您正在尝试执行一些网络抓取。由于您使用的是节点,因此有一个非常流行且广泛的模块 ( Puppeteer ) 允许您从网页中抓取数据。您可以在他们的操场上进行试验:https ://try-puppeteer.appspot.com/

另外,请记住,从网站的某些页面抓取数据可能存在法律问题,因此我建议您也对此进行调查。robot.txt您可以查看网站文件中不允许/不允许的页面。


推荐阅读