「R图秀
欢迎关注天善智能,我们是专注于商业智能BI,人工智能AI,大数据分析与挖掘领域的垂直社区,学习,问答、求职一站式搞定!
作者:傅兴,个人号:Rapp
为了进一步提高自己数据获取的能力,我把目光放到了互联网上一个重要的数据来源:社交网络(Social Network),比如国外的facebook和twitter,以及国内的微博和微信。由于访问facebook和twitter比较困难,我最终选择新浪微博作为分析的对象。
我首先学习的是新浪微博的API,看看有没有更简单的方法获取数据。遗憾的是,如果想通过API获取目标用户的微博,必须首先获得对方的授权。我获取微博数据只是出于学习的目的,并不是要开发基于微博的应用,所以此路不通,果断放弃。我觉得最靠谱的还是用RSelenium写个程序来操作浏览器,自动帮我刷微博。
数据获取的技术问题解决了,下面就需要考虑抓取哪些人的微博。演艺明星是微博上大家比较关注的对象,就先从他们入手吧!我平时很少关注娱乐圈,认识的明星也不多,但是挺喜欢和家人一起看《奔跑吧兄弟》(跑男),所以今天就来分析一下跑男中的明星(邓超,李晨和Angelababy)以及他们的另一半(孙俪,范冰冰和黄晓明)的微博数据。
爬虫代码的主要部分是2个函数:登录函数(weibo_login)和抓取函数(fetch_post)
需要注意的是,目前的抓取函数还不支持人名搜索,所以在抓取某人的微博之前,首先要手动看一下他微博URL上的用户名是什么(用户名的具体位置在weibo.com和?中间),然后用该用户名作为参数调用抓取函数,比如下面的代码:
在展示微博数据之前,我们必须先想清楚自己想看什么?想回答什么样的问题,比如:
1. 我很想知道明星微博的高频词汇有哪些?夫妻之间会不会有“共同语言”?2. 我还想了解明星的朋友圈有哪些人,夫妻之间的朋友有多大的交集?
我们可以用词云(word cloud)来展示各个明星的微博中最常出现的词汇(这里只考虑名词,其他词性的词汇都已过滤掉):
我们可以看到,“电影”是他们微博中出现最频繁的词汇,说明他们利用微博在向粉丝们宣传自己的电影,其次就是和家人朋友相关的词汇。由于时间有限,我没有继续深挖下去。生成词云的代码如下:
接下来要回答的是第二个问题,如何从明星们的微博中挖掘出他们的社交网络?我首先想到的是微博中@某人的功能,@后面的微博账号和明星之间应该存在某种关联,如果@某人的次数很多,说明两者之间的关系密切(好友或家人)。接下来我们就来看看明星夫妻之间的“朋友圈”是怎样的。
1. 黄晓明和Angelababy:
2. 李晨和范冰冰:
3. 邓超和孙俪(邓超绝对是模范丈夫,@老婆的次数这么多!)
统计@次数的代码如下,为了能看清网络中的节点,我过滤掉了一些低频的@:
下面是网络可视化的代码:
网址:「R图秀 https://mxgxt.com/news/view/137054
相关内容
r=a(1深度解析:目标检测领域的明星模型Faster R
王一珩唱R&B好好听
R星员工暗示《GTA 6》不会玩传统营销
端午宝宝的《You R》直拍
赵露思的《you r》饭拍视频
求图中阴影部分的面积 其中a=9厘米,b=10厘米,r=4cm
上海时装周走秀图,众明星同台秀技,谁的走秀图更出彩?
R&B小天后歌声太迷人 我们的歌
新歌《You R》,即将发布 赵露思YouR 赵露思