“简说Python”,选择“置顶/星标公众号”
福利干货,第一时间送达!
本文作者 | 徐麟
来源 | 数据森麟
前言
近日,蔡徐坤一纸律师函发往B站,律师函内容显示,“B站上存在着大量侵害委托人的内容,且点击率高,传播范围广,影响十分恶劣。这些内容的制作、上传、散布、转载都已侵害了委托人的名誉权、肖像权、表演权等权利。要求对方立即删除侵权内容,确保不再出现任何侵犯内容。”
然而B站也毫不示弱,在其官微正面回复蔡徐坤,并给蔡徐坤“友情推荐“了名誉权的相关文章,可谓有理有据
我们今天在这里不去评判究竟孰是孰非,更多的是要用数据带大家一起走进B站鬼畜视频的神秘世界,看看那些活跃在B站的“鬼畜“届巨头们
初识“鬼畜”
何为“鬼畜“?我们截取了百度百科上对于鬼畜视频的定义,让大家能够对鬼畜视频有个初步的认知:
我们此次的数据来源就是B站的鬼畜视频专区的信息,可以看到视频信息是以列表形式进行给出:
通过审查元素,我们找到了对应的接口,并进行列表信息的爬取,获得了从2018年发布至今的30000多条鬼畜视频的信息,包括了弹幕数,发布时间,作者,标签等:
部分代码如下:
def get_list(j,start,end):
attempts = 0
success = False
while attempts < 500 and not success:
try:
url = 'https://s.search.bilibili.com/cate/search?callback=jqueryCallback_bili_06768280565043483&search_type=video&view_type=hot_rank&order=click&cate_id=22&page={}&pagesize=20&time_from={}&time_to={}'.format(str(j),str(start),str(end))
header = {'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win32; x32; rv:54.0) Gecko/20100101 Firefox/54.0',
'Connection': 'keep-alive'}
cookies ='v=3; iuuid=1A6E888B4A4B29B16FBA1299108DBE9CDCB327A9713C232B36E4DB4FF222CF03; webp=true; ci=1%2C%E5%8C%97%E4%BA%AC; __guid=26581345.3954606544145667000.1530879049181.8303; _lxsdk_cuid=1646f808301c8-0a4e19f5421593-5d4e211f-100200-1646f808302c8; _lxsdk=1A6E888B4A4B29B16FBA1299108DBE9CDCB327A9713C232B36E4DB4FF222CF03; monitor_count=1; _lxsdk_s=16472ee89ec-de2-f91-ed0%7C%7C5; __mta=189118996.1530879050545.1530936763555.1530937843742.18'
cookie = {}
for line in cookies.split(';'):
name, value = cookies.strip().split('=', 1)
cookie[name] = value
html = requests.get(url,cookies=cookie, headers=header).content
info = json.loads(html.decode('utf-8'))['result']
return info
except:
attempts = attempts+1
return []
period = pd.read_excel('起止日期.xlsx')
guichu_all = []
for i in range(period.shape[0]):
for j in range(100):
this_guichu = get_list(j,period['start'][i],period['end'][i])
guichu_all = guichu_all+this_guichu
print('{} {}'.format(str(i),str(j)))
最后得到的数据如下:
万物皆可鬼畜
综述
在鬼畜界中,有一句被大家所熟知的话:万物皆可鬼畜。它的意思是,没有什么是不能成为鬼畜素材的。鬼畜的题材之广泛,往往会超出大家的想象,从动漫到电视剧,网游,甚至连《猫和老鼠》《小猪佩奇》这种动画片都常常出现在了鬼畜豪华套餐之中。
首先我们来看一下鬼畜视频的“用户画像”,提到对鬼畜视频的理解和认知,阿婆主们说第二,没有人敢说第一,那么我们就看看阿婆主眼中的鬼畜视频:
阿婆主们为了让自己的视频能够得到更多关注,都会给自己的视频打上非常全面、精准的标签,其中包括了对视频的描述以及素材的信息,我们将这部分信息进行提取,为鬼畜视频刻画其“用户画像”,通过词云进行展现:
除了鬼畜调教本书,有许多其他的非常有意思的描述,比如洗脑循环、恶搞、蜜汁带感、有毒、魔性、新人都是怪物,这基本上是对鬼畜视频非常精确的描述了。这些描述也很好的解释了鬼畜视频能够“病毒式“”的传播的原因了
下面就进入“万物皆可鬼畜”的正题,主要分为两个部分:人物和素材,人物主要是指的现实生活中的人物,包括了传统意义上的明星和鬼畜全明星两部门,素材就指的是那些可以用来进行鬼畜创作的原始内容,包括了歌曲,电视剧,电影等等
人物篇
首先看一下人物篇,我们先来看下2018,2019两年视频弹幕量最多的人物:
可以看到面筋哥在18,19年的榜单上都排名第一,面筋哥以其浑厚的嗓音,洒脱的风格,不羁的穿搭走入了b站,成为了鬼畜区的王者,未来期待面筋哥更多的作品。同时看到2019年蔡徐坤进入了榜单,吴亦凡的排名也得到了明显的提高,依然引起了越来越多的阿婆主的关注。
下面我们把维度从年切分至周,制作动态图看下大家18年至今每周的排名变化,我们使用的是大神之前搭好的模板,使用方法可以参照github上https://github.com/Jannchie/Historical-ranking-data-visualization-based-on-d3.js 的讲解:
可以看到,面筋哥在2018年很长一段时间都是独领风骚,然而近期霸占榜单头名的依然变成了蔡徐坤,想必这也是蔡徐坤团队最近行动的原因了,我们用词云图将这些鬼畜届的巨头们放在一起,看看是否有你熟悉的:
涉及到的领域相当广泛,不仅有面筋哥这些常年活跃于鬼畜届的巨头,也有吴亦凡、蔡徐坤这样的明星,就连朱广权这种央视的主播都出现在了榜单,互联网界的四位巨头也在榜单之中,未来也期待更多的互联网巨头们精彩的作品。看完了人物,我们看下鬼畜素材的情况:
素材篇
可以看到18年和19年素材产生了比较大的变化,但是改革春风吹满地和猫和老鼠已成为了鬼畜区的镇区质保,在排名中名列前茅,这份榜单也很好的诠释了“万物皆可鬼畜”这一真理。小品、动漫、影视人物、热门歌曲,只有你想不到的,没有鬼畜区做不到的,同样我们来看下每个周的动态变化情况:
同样也把这些常见素材通过词云图放在一起,进一步看一下鬼畜区阿婆主们令人惊叹的脑洞:
部分代码如下:
tag_stat = Counter(guichu_tag['tag'])
back_color = imread('D:/爬虫/鬼畜/bilibili.jpg') # 解析该图片
wc = WordCloud(background_color='white', # 背景颜色
max_words=100, # 最大词数
mask=back_color, # 以该参数值作图绘制词云,这个参数不为空时,width和height会被忽略
max_font_size=200, # 显示字体的最大值
font_path="C:/Windows/Fonts/STFANGSO.ttf", # 解决显示口字型乱码问题,可进入C:/Windows/Fonts/目录更换字体
random_state=42, # 为每个词返回一个PIL颜色
# width=1000, # 图片的宽
# height=860 #图片的长
)
# WordCloud各含义参数请点击 wordcloud参数
image_colors = ImageColorGenerator(back_color)
wc.generate_from_frequencies(tag_stat)
plt.figure(figsize=(8,8),dpi=80)
plt.imshow(wc.recolor(color_func=image_colors))
plt.axis('off')
## 绘制图片
renwu_stat_year_18 = tag_count_year[(tag_count_year['year']=='2018') & (tag_count_year['type']=='人物')]
renwu_stat_year_18.sort_values('danmu',ascending=False,inplace=True)
attr = renwu_stat_year_18['tag'][0:10]
v1 = renwu_stat_year_18['danmu'][0:10]
bar = Bar("2018人物弹幕数量TOP10")
bar.add("弹幕数量", attr, v1, is_stack=True, xaxis_rotate=30,xaxis_label_textsize=18,
xaxis_interval =0,is_splitline_show=False,label_text_size=12,is_label_show=True)
bar.render('2018人物弹幕数量TOP10.html')
火钳留名
“火钳留名“是鬼畜区视频弹幕常见用语,表示对某一视频未来的看好,我们也来看看那些在鬼畜区最火的视频:
最后我们放个彩蛋,那就是为大家精选的集合了鬼畜区全明星(波澜哥,面筋哥,两位马爸爸等人)的《火力种田王2》,看过之后,想必大家都会神清气爽(sanguanjinhui):
今天的文章就到这里了,后台回复“B站”可以获得本文代码,万水千山总是情,点个“在看”行不行
踏实的人更容易过好生活,本文完。
你可能还想看:
推荐阅读:
数据分析从零开始实战
Python小知识
我是老表,支持我请转发分享本文。
/今日留言主题/
凌晨更的文,无打卡主题,转发支持一下吧!