我的数据提供者 » 博客 » 沃尔玛网页抓取——如何抓取 1 万种产品?

沃尔玛网页抓取——如何抓取 1 万种产品?

  • by

我们有沃尔玛刮刀。 我们的任务是从沃尔玛下载 20 万件优质产品。

在这里找到更多 https://mydataprovider.com/sites/walmart/

这个任务看起来很简单,但如果你知道优质产品的定义,你就会明白它并不是那么简单。
为什么?
因为如果你需要通过刮削从沃尔玛获得 20K 的优质产品,你需要刮掉大约 500K 甚至 1000K(1 万)。
网页抓取后,需要通过沃尔玛产品页面的产品评论+卖家评分来过滤产品。

我们如何获得产品 URL?

第一步,我们开始从类别中收集产品 URL。
我们创建了一个做简单工作的刮刀
输入 - 类别 URL
输出 - 产品 URL。

+ 1 个简单的功能 - 可以从浏览器 UI 中插入带有所有应用过滤器的类别 URL。
它使我们能够减少对不需要产品的请求数量。 (我们通过评级或价格、卖家等过滤它们)

但 ! 您需要插入类别 URL 并通过 UI 过滤器对其进行过滤。
这需要时间,人类必须在此之下工作!
于是我们开始寻找另一种方式

通过 satemap.xml / robots.txt 抓取沃尔玛产品 URL

希望您知道 robots.txt 有指向站点地图或站点地图的链接。
让我们看看 Walmart robots.txt

https://www.walmart.com/robots.txt
看这个 :

你看到它有几个站点地图,
它们在逻辑上按主题划分:文章、品牌、产品、类别等。
因此,我们的想法是使用它从站点地图中抓取所有产品 URL!

现在我们必须开发一个从沃尔玛站点地图中抓取产品 URL 的爬虫。
重要的是要知道沃尔玛站点地图具有较深的层次结构 + 已使用 gz 算法存档了 XML 数据。

我们实现了这一点!

希望本文能帮助您为您的项目构建类似的东西!