225,210
社区成员




我们可以通过多种方式获得1688商品数据,自己爬取可以得到少量数据,也可以通过第三方服务接入官方API接口。
接着上次话题,今天继续讲解如何使用网页抓取函数 GetTableByClassNameW(url, css) 抓取1688网站上商品规格型号、价格及库存等数据。
如下图所示,打开一个1688网页,要求抓取规格、价格、库存等数据。
根据网页结构,我们很容易知道规格、价格、库存在一张表格中,于是,我们使用Firefox火狐浏览器的检查元素功能,找到表格的样式名或id。
从源代码中,找到表格table的class名称是table-sku
接下来,在excel表中写公式 =GetTableByClassNameW(A2,"table-sku"),打开Excel浏览器启动网页抓取任务。
当Excel浏览器完成抓取任务后,回到Excel中,重新计算公式,会得到以下数据。
公式返回的数据是一长串文本,仔细观察,我们发现“-+缺货;”是表格中每一行的最后一个关键词,为了阅读方便,我们按照关键词“-+缺货;”来换行。
1.5米10灯电池款;6.50元;7190套可售;-+缺货;
3米20灯电池款;11.00元;9488套可售;-+缺货;
3米20灯usb款;11.00元;9941套可售;-+缺货;
6米40灯电池款;21.00元;9994套可售;-+缺货;
6米40灯usb款;21.00元;9997套可售;-+缺货;
......
使用函数Split2Row(data!A1:B18,2,"-+缺货;")将抓取到的表格数据拆分一行一行的。函数中data!A1:B18指表格区域,2指表格第二列是明细行数据,需要拆分,"-+缺货;"是关键词,按此关键词拆分。
拆分后的数据还需要进一步加工,使用公式=Split2Column(B3,";")继续拆分数据,将规格、价格、库存拆分成列。这里按分号";"拆分。
经过以上步骤,使用Excel网络函数库的网页抓取函数可以抓取网页数据并进行数据加工处理。看上去有点难,但相比学习Python编程,写个公式要容易得多呢。