《延禧攻略》演员大起底——利用Python+bs+pyecharts分析绘制词云和玫瑰图
点击上方“程序人生”,选择“置顶公众号”
第一时间关注程序猿(媛)身边的故事
作者
YOUNG
已获原作者授权,如需转载,请联系原作者。
《延禧攻略》可以说是于正的洗白之作,没有特别的戏说,也没有异想天开的改编,在基本尊重历史事实的基础上,通过魏璎珞(令妃)的视角窥探整个后宫的众生相。可以称得上“管中窥豹,可见一斑”。
某位哲人说过:一个电视剧这么火,背后一定有原因。背后绝对有JQ。又有哲人说过:内因很重要。为此决定现学现卖,抛砖引玉地分析一下演员背后的因素。
1、分析网页
Step1:分析网页内容
感谢电视指南网http://www.tvzn.com/14784/yanyuanbiao.html)的数据支撑。
通过浏览网页,发现我们所需的演员信息:
Step2:分析网页数据格式
通过网页格式,可知所需的信息
class="gclearfix">
< li>< a class="mh-pic" href="/14784/role/203516.html" target="_blank">< img height="124" class="mh-img" alt="秦岚" src="http://img.tvzn.com/role/simages/203516.jpg">< span class="mh-role">富察·容音span>< span class="mh-mask">span>a>< p class="mh-title">< a class="mh-actor" href="/person/553.html">秦岚a>饰演p>li>
为此,可利用beautifulsoup查找关键信息:
contents1 = soup.find('ul', class_="gclearfix").findAll("li")
Step3:定点抓取数据
通过循环抓取主演姓名信息
actorName = content.find("p", class_="mh-title").find("a", class_="mh-actor")
通过循环抓取非主演姓名信息
actorName = content.find("p", class_="mh-l").find("a", class_="mh-actor")
2、汇总数据
将演员的姓氏和名字分开统计:
surnamelist = [];
givennamelist = [];
surname_dict = {}
for actorname in nameList:
surnamelist.append(actorname[0]);
for givenname in actorname[2:]:
givennamelist.append(givenname)
if actorname[0] not in surname_dict:
surname_dict[actorname[0]] = 1
else:
surname_dict[actorname[0]] += 1
3、绘制词云
利用wordcloud绘制词云:
word_count = collections.Counter(surnamelist );
# 设置词云属性
wc = WordCloud(font_path=font_path, # 设置字体
background_color="white", # 背景颜色
max_words=2000, # 词云显示的最大词数
mask=back_coloring, # 设置背景图片
max_font_size=100, # 字体最大值
random_state=42,
width=1000, height=860, margin=1,)
wc.generate_from_frequencies(word_count);
姓氏(主角背景版):
姓氏(苹果背景版):
名字:
4、进一步抓取信息
费了这么大的劲,只分析一个姓名感觉不能得到满足,通过仔细分析网页结构,有一个惊喜的发现:
每个演员都有个人的链接!!!
链接信息就在href中:
class="mh-actor" href="/person/553.html">秦岚
发现天然的富矿后,老夫欣喜若狂,为此加班到深夜3点,进一步分析了演员的身高、体重、籍贯和星座。
话不多说,直接看结构:
< div class="tn-box-content tn-widget-content tn-corner-bottom">
籍贯:辽宁省沈阳市沈河区< br>
身高:165cm/5.4英尺< br>
体重:46kg/101磅< br>
职业:演员,歌手< br>
生日:1981-07-17< br>
星座:巨蟹座< br>
性别:女< br>
血型:b型< br>
三围:< br> div>
5、分析共同出演的电视剧
同样地,上词云。
《延禧攻略》当仁不让,高居首位。同时有额外发现,就是很多大火的电视剧《凤囚凰》《朝歌》《我们正年轻》《长歌行》等。
6、出玫瑰图,看个人信息
直接上图,不说话:
从来没有无缘无故的爱,也没有无缘无故的恨。一部热播剧的背后是几百个演员的艰辛付出和刻苦修炼。愿生活多姿,但你得足够努力!
- The End -
「若你有原创文章想与大家分享,欢迎投稿。」
加编辑微信ID,备注#投稿#:
程序 丨 druidlost
小七 丨 duoshangshuang
Gitchat重磅推出的免费电子书。作者刘鹏老师现任科大讯飞副总裁、消费者事业群副总裁,兼任大数据研究院院长。4万字内容,说学逗唱,揭秘互联网与职场的湿暗后厨。精彩纷呈,免费领取~
上期精彩内容
关注公众号:拾黑(shiheibook)了解更多
[广告]赞助链接:
四季很好,只要有你,文娱排行榜:https://www.yaopaiming.com/
让资讯触达的更精准有趣:https://www.0xu.cn/
随时掌握互联网精彩
- 1 中国减贫成果激励着许多国家 7931175
- 2 中国对日本等国试行免签 7968225
- 3 网红夫妻车上直播时双双遇难 7803139
- 4 “互联网发展报告”划重点 7747986
- 5 微信或史诗级“瘦身” 内存有救了 7669769
- 6 女生半裸遭男保洁刷卡闯入 酒店回应 7506474
- 7 王楚钦复仇莫雷加德晋级四强 7433329
- 8 胖东来创始人炮轰车企企业家 7391764
- 9 受王宝强资助孩子父亲发声 7264483
- 10 相约乌镇峰会 共话“智能向善” 7185630