大家好,我是零一,电商数据分析专家。
上周的文章讲到采集数据三个流程,分别是找数、采数和洗数。
上周讲到了找数和采数,用Excel采集淘宝网的100页数据,今天是接着上次的内容,如何从HTML中清洗出100页的商品数据,因为每一页是44个商品信息,因此共4400条数据。
这就是所谓的数据清洗的技术,数据清洗有时候比爬数据复杂多了。
对于初学者而已,没有人指导的话是很难摸索出来的。
因为首先要做的是读懂HTML的结构,从而才能确定使用哪种解析方法。
从网页源代码中找到数据并观察数据的结构,下面是源代码节选。
g_page_config = {"pageName":"mainsrp","mods":{"shopcombotip":{"status":"hide"},"phonenav":{"status":"hide"},"debugbar":{"status":"hide"},"shopcombo":{"status":"hide"},"itemlist":{"status":"show","data":{"postFeeText":"运费","trace":"msrp_auction","auctions":[{"p4p":1,"p4pSameHeight":true,"nid":"599712885055","category":"","pid":"","title":"\u003cspan class\u003dH\u003e茶烟\u003c/span\u003e戒烟神器非烟草专卖烟真烟一条香姻产品爆珠男正品烟包邮香烟","raw_title":"茶烟非烟草专卖烟一条爆珠男正品烟包邮香烟","pic_url":"//g-search1.alicdn.com/img/bao/uploaded/i4/imgextra/i4/391060116/O1CN01R6x2SJ1CjAUdyz9oZ_!!0-saturn_solar.jpg","detail_url":"https://click.simba.taobao.com/cc_im?
通过观察会发现数据是在{键:值}为结构的json结构中,json结构是可以被直接解析的,常见可以被直接解析的结构有Table、xml、json。
注意,json结构是以{开始,}结尾的,因此要从html中提取数据。
通过观察知道json结构前后分别是:
g_page_config = {json正文}; g_srp_loadCss()
注意等号两边都有空格符号,;号后面也有多个空格,少一个多一个空格都会出错,因此最好在页面进行复制。把空格用中文表示的话,大概就是下面的光景。
g_page_config空格=空格{json正文};空格空格空格空格g_srp_loadCss()
在Power Query中先选中采集下来的HTML内容,在转换选项卡中点击提取,找到分隔符之间的文本工具。
设置好开始和结束分隔符即可。
截取出JSON文本后,还是在刚才的操作下方,点击分析,找到JSON工具
看到Record就表示操作对了,下面只要根据路径展开就可以了。
按照mods-itemlist-data-auctions的路径展开record就可以了,标题、运费、销量等信息在里面了。如何知道这个路径?就需要了解JSON结构的基本知识了。
删除不要的字段就可以了,销量、价格、评价数等信息都有了。
你拿下了多少页的HTML文件,就可以解出来对应多少的商品信息,商品信息再做下分析建模就可以产生巨大的商业价值。
文终。
零一原创出版物
网友评论