《懒人Shell脚本》之三——微博分类信息获取与格式化

来源:互联网 发布:sql中的聚合函数 编辑:程序博客网 时间:2024/06/05 19:00

1、需求:

获取微博网站ctg1_4188#”>http://d.weibo.com/102803_ctg1_4188-_ctg1_4188# 社会类媒体的名称信息。
构造成json格式,用于echart格式化显示。
这里写图片描述

2、分析&实现步骤

第一步:截获

地址:
http://d.weibo.com/?topnav=1&mod=logo&wvr=6
这里写图片描述
获取关键名称及链接(下面5行代码非原创,效率非常高):

var selector='.WB_info';var a=document.querySelectorAll(selector+' a');for(var i =0; i < a.length; i++){console.log(a[i].href+" "+a[i].innerText);}

如下:

VM7557:5 http://weibo.com/rmwfjpd?refer_flag=1028035010_ 人民网福建频道VM7557:5 http://company.verified.weibo.com/verify/orgapplyVM7557:5 http://sports.weibo.com/olympics2016VM7557:5 http://weibo.com/thepapernewsapp?refer_flag=1028035010_ 澎湃新闻VM7557:5 http://company.verified.weibo.com/verify/orgapplyVM7557:5 http://vip.weibo.com/personal?from=mainVM7557:5 http://weibo.com/globaltimes?refer_flag=1028035010_ 环球网

上述信息存入:shehui.txt中。

第二步:取上述文件第3列值,存入文件shehui.info.

[root@laoyang process]# awk {'print $3'} shehui.txt | sort -n | uniq > shehui.info

第三步:逐行读取,构造json文件。

[root@laoyang process]# cat readProc.sh#!/bin/shcat /dev/null > format.jsondos2unix shehui.info      #格式化,去掉每行末尾的windows结束符"^M”cat ./shehui.info | while read linedoif [ -z "$line" ]; then  continuefiecho "{" >> format.jsonecho "\"name\": \"$line\",">> format.jsonecho "\"size\": 1455" >> format.jsonecho "}," >> format.jsondone

第四步:在http://json.cn/ 验证构造的json格式是否正确。

正确的话,提交前端,就能正确显示结果了。
这里写图片描述

结语:

能用脚本实现的一定不要手写,不要复制、粘贴。

作者:铭毅天下
转载请标明出处,原文地址:
http://blog.csdn.net/laoyang360/article/details/52142751
如果感觉本文对您有帮助,请点击‘顶’支持一下,您的支持是我坚持写作最大的动力,谢谢!

0 0
原创粉丝点击