之前我们已经说过网页抓取的相关内容
上次我们是以亚马逊某网页的产品为例
抓取价格、品牌、型号、样式
主流电商API接口数据采集返回商品价格 SKU 数据
该网页上价格、品牌、型号、样式等
都只有一个
如果网页上的目标内容
根据不同规格有多个
又该怎么提取呢?
▼如下图所示
当机身颜色、套餐、存储容量等
规格不同时
对应价格也不同
那该怎么获取不同属性下的价格呢?
同样使用Excel网络函数库的
网页抓取公式可以提取
▼提取结果如下:
可以获取不同规格下的
编号、价格和库存
下面以淘宝某商品具体讲解一下
#1
安装插件
安装Excel网络函数库和Excel浏览器。
安装地址:excelapi.com
#2
抓取Json格式所有数据
将需要提取的商品链接复制到表格中。
▼如下图所示:
在表格内使用公式
=GetTaobaoDataW(Url)可以从指定淘宝商品详情页抓取所有商品数据,数据以Json格式返回。
打开Excel浏览器,启动Excel浏览器网页抓取任务,点击门户网站—设置网页抓取任务—开始,启动网页抓取任务。
在Excel浏览器的任务栏,会显示剩余抓取任务。
当显示“没有找到要处理的请求时”,说明任务已经执行完毕。
打开表格,重新计算工作簿。如果是在WPS表格中,直接点击公式—重算工作簿;如果是在Excel中,可以通过删除空白行/列的方法实现重新计算。
重新计算过后,即可获得如下结果。
#3
将数据转为数据表
在表格内使用公式
=GetJsonSourceToDataTable(Json_string,Property_name)可以将Json数据源中的数组转成数据表。第一个参数表示Json原始数据,第二个参数表示数组属性名称。
然后使用CONCAT函数将多个区域或字符串的文本组合起来,在这里将刚刚转成的数据表组合在一起。
▼操作动图如下:
#4
分类提取数据表的数据
新建一个工作表,在表格第一行备注好要提取的内容,第一列写好序号以便后续操作,如下图所示。
在表格内使用公式
=DataTableParser(IDS,Row,Col)提取数据表中的数据。第一个参数表示数据表id;第二个参数表示行序号,从1开始;第二个参数表示列序号,从1开始。
分别提取商品规格、SKUID、价格和库存量。
▼操作动图如下:
经过上述操作,已经把网页上的信息提取出来了。
为了方便观察,可以将规格中的网络类型、颜色、套餐类型和存储容量分别提取出来,然后再使用筛选功能对商品进行筛选。
使用公式
=Split2Array(Text,[Delimiter],[Column_index])可以将指定文本按分隔符分割数据并返回指定列。第一个参数表示待分割文本;第二个参数表示分割字符,可以是单个字符,也可以是字符串;第三个参数表示列的位置索引。
▼操作动图如下:
进行筛选操作时,如果是Excel,选中第一行,点击排序和筛选—筛选即可;如果是在WPS表格中,直接在开始中点击筛选。
完成之后,就可以对各种信息进行筛选了。
▼如下图所示:
好啦
以上就是网页抓取实例之
淘宝数据抓取的全部内容了
你学会了吗?
有需要的小伙伴快去试试吧
过程中遇到任何问题的话
欢迎在下方留言
或者关注
私信小编