电商平台的数据抓取,一直是网页抓取公式的热门实战实例,之前我们通常是针对国内的电商平台进行数据抓取,昨天小编受到委托,针对一个俄罗斯电商平台wildberries做了数据抓取,抓取的主要内容是商品标题、价格及评价数量。
本文小编将给大家讲解下网页抓取的步骤及遇到的难点。
先看一下整体效果,在网址提前分析录入好的前提下,我们通过输入页数,便可自动生成商品的标题、价格和评价数量:
在对网页进行一定的分析之后,我们开始寻找其数据源。右键检查或按快捷键F12打开开发者工具,然后在NetWork选项卡下,筛选找出请求结果,当找到请求中含有的数据与网页外部显示的数据一致时,便是寻找成功了。
这里,我们将请求的网址复制下来,以便后续使用。
有了网址,我们便可以将数据源提取到表格中,通常我们使用的公式为=GetJsonSource(),但是在提取过程中我们发现,由于wildberries平台的一个页面数据量太大,导致数据源的字符数超过了表格的最大字符数限制,所以提取的内容并不完整。
为解决这一问题,我们更换为=GetJsonSourceW()公式,并对其进行改造。将网页中的源数据下载到本地文件,代替了之前的提取到表格单元格中,公式的括号内同样都是填写数据源的网址。当然,使用=GetJsonSourceW()需要打开Excel浏览器执行网页抓取任务,相信这点肯定难不倒大家。
终于将数据源搞定了,剩下的工作就简单了起来。由于数据源为JSON格式的,我们便使用=GetJsonProperty()公式提取,其中A5表示数据源所在的单元格位置,data.products.0.name为属性名称
写好公式后,重新计算下公式,很快就会出来结果。至此,我们的网页抓取任务就算结束了,后面的工作就是对表格的内容进行优化,比如我们将数据源的网址进行分析,把页数拿了出来,这样我们就可以做到仅通过修改数字,便可跳转到其他页,实现抓取任务。