如果您需要获取不同产品的评论,您可以在 Node 中快速完成,因为 Node 的异步功能可以帮助您轻松地从亚马逊获取数据。
在本文中,我们将仅使用几个 NodeJS 库一起抓取亚马逊评论和评论。
我们需要的第一件事是亚马逊 URL 列表,在此示例中,我们将使用 amazon.com URL。 我们收集了大约 1,000 个产品 ASIN 的样本,您可以从此处下载。
亚马逊产品列表下载 '亚马逊产品列表下载'在 Node 中加载 Amazon URL
让我们创建一个文件 start.js
这将包含我们的节点代码。
让我们也安装我们的两个需求:
npm i cheerio
npm i proxycrawl
现在我们的项目结构应该至少包含以下文件:

现在是时候开始编码了。 让我们在 start.js
文件,我们首先将 amazon-products.txt 文件加载到一个数组中。 我们可以使用以下代码来做到这一点:
1 | 常量 FS = 要求('fs'); |
现在我们在数组中有了 URL,我们可以开始抓取它们了。 我们将使用 Crawlbase(以前的 ProxyCrawl)节点库 我们之前安装的。
使用 Crawlbase(以前的 ProxyCrawl)爬取亚马逊
我们需要初始化库并使用我们的令牌创建一个工人。 对于亚马逊,我们应该使用普通令牌,确保用您的实际令牌替换它 你的帐户.
我们必须在我们的项目中添加以下两行:
1 | 常量 { 代理抓取API } = 要求('代理爬行'); |
结果代码如下:
1 | 常量 FS = 要求('fs'); |
现在是抓取 URL 的时候了,我们每秒会执行 10 个请求,这足以满足我们的测试需求,但如果您需要更多,请确保 联系 Crawlbase(以前的 ProxyCrawl).
让我们构建我们的代码以每秒发送 10 个 API 请求……
1 | 常量 每秒请求数 = 10; |
我们现在正在加载 URL,但我们没有对结果做任何事情。 所以现在是时候开始刮了😄
抓取亚马逊评论
我们将使用 节点 Cheerio 库 我们之前安装的用于解析生成的 HTML 并仅提取评论。
让我们首先包括cheerio:
1 | 常量 欢呼= 要求('cheerio'); |
现在让我们构建一个函数,它应该接收 HTML 并相应地解析它。
1 | 功能 解析HTML(HTML){ |
所以现在我们有了评论的文本内容,我们已经接近完成抓取了,但是我们缺少最关键的部分,即将我们的函数与我们之前的一段代码连接起来。 当我们打电话给 Crawlbase(以前的 ProxyCrawl)API.
完整的代码应如下所示:
1 | 常量 FS = 要求('fs'); |
代码已准备就绪,您可以每秒快速抓取 10 条亚马逊评论。 显然,对于这篇文章,我们只是在控制台中登录结果,您应该替换它 console.log
随心所欲。 它可以保存在数据库中,保存在文件中等。这取决于您。
我们希望你喜欢这个教程,我们希望很快见到你 Crawlbase(以前的 ProxyCrawl). 快乐爬行!