linux 微博分类信息获取与格式化

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);
}
1
2
3
4
5
如下:

VM7557:5 http://weibo.com/rmwfjpd?refer_flag=1028035010_ 人民网福建频道
VM7557:5 http://company.verified.weibo.com/verify/orgapply
VM7557:5 http://sports.weibo.com/olympics2016
VM7557:5 http://weibo.com/thepapernewsapp?refer_flag=1028035010_ 澎湃新闻
VM7557:5 http://company.verified.weibo.com/verify/orgapply
VM7557:5 http://vip.weibo.com/personal?from=main
VM7557:5 http://weibo.com/globaltimes?refer_flag=1028035010_ 环球网
1
2
3
4
5
6
7
上述信息存入:shehui.txt中。

第二步:取上述文件第3列值,存入文件shehui.info.
[root@laoyang process]# awk {'print $3'} shehui.txt | sort -n | uniq > shehui.info
1
第三步:逐行读取,构造json文件。
[root@laoyang process]# cat readProc.sh
#!/bin/sh

cat /dev/null > format.json
dos2unix shehui.info      #格式化,去掉每行末尾的windows结束符"^M”

cat ./shehui.info | while read line
do
if [ -z "$line" ]; then
  continue
fi
echo "{" >> format.json
echo "\"name\": \"$line\",">> format.json
echo "\"size\": 1455" >> format.json
echo "}," >> format.json
done

第四步:在http://json.cn/ 验证构造的json格式是否正确。
正确的话,提交前端,就能正确显示结果了。


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

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值