您好,欢迎进入亚博vip网页版亚博vip网页版电动伸缩门有限公司官网!
亚博vip网页版|首页

联系我们

邮箱:admin@hdpaper.cn
电话:066-60937377
地址:陕西省安康市孝昌县远事大楼44号 在线咨询

公司资讯

B站2020年每周必看热门视频数据盘货(数据分析)

发布日期:2021-10-10 01:01浏览次数:
本文摘要:1.数据抓取数据集的获取是我们举行数据分析的第一步。现在获取数据的主要途径一般为:现成数据;自己写爬虫去爬取数据;使用现有的爬虫工具爬取所需内容,生存到数据库,或以文件的形式生存到当地。 博主用的是用自己编写的爬虫代码获得数据。爬虫的设计思路1.首先确定需要爬取网页URL地址2.通过HTTP/HTTPS协议来获取相应的HTML页面3.提取HTML页面里有用的数据a.如果是需要的数据就生存起来b.如果是页面里的其他URL,那就继续执行第二步。

亚博yabo888vip网页版

1.数据抓取数据集的获取是我们举行数据分析的第一步。现在获取数据的主要途径一般为:现成数据;自己写爬虫去爬取数据;使用现有的爬虫工具爬取所需内容,生存到数据库,或以文件的形式生存到当地。

博主用的是用自己编写的爬虫代码获得数据。爬虫的设计思路1.首先确定需要爬取网页URL地址2.通过HTTP/HTTPS协议来获取相应的HTML页面3.提取HTML页面里有用的数据a.如果是需要的数据就生存起来b.如果是页面里的其他URL,那就继续执行第二步。爬虫基本流程提倡请求通过HTTP库向目的站点提倡请求,就是发送一个Request,请求可以包罗分外的header等信息,等候服务器的响应获取响应内容如果服务器正常响应,会获得一个Reponse,Reponse的内容即是所要获取的页面内容,类型可能有HTML,json字符串,二进制数据(如图片视频)等类型。

剖析内容获得的内容可能是HTML,可以用正则表达式,网页剖析库举行剖析,可能是json,可以直接转为JSON剖析工具剖析,可能是二进制数据,可以做生存或者进一步处置惩罚。生存数据生存的形式多种多样,可以生存成文本,也可以生存到数据库,或者生存特定花样文件反爬虫机制与对策1 通太过析用户请求的Headers信息举行反爬虫。

网站中应用的最多2通过验证用户行为举行反爬虫,不如通过判断同一个ip在短时间内是否频繁会见对应网站等举行分析。3通过动态页面增加爬取的难度,到达反爬虫目的。

对策1 在爬虫中结构这些用户请求的headers信息,以此将爬虫伪装成浏览器2 使用署理服务器并经常切换署理服务器方式,一般就能够攻克限制。3.使用一些软件,好比selenium+phantomJS就可以攻克反爬虫的手段 :user-agent、署理、验证码、动态数据加载、加密数据数据的选择与处置惩罚1 网页文本 如HTML文档 json花样文本2.图片 获取到的是二进制文件生存为图片花样3.视频 获取的二进制文件生存为视频花样即可4.其他 只要能请求到的,都能获取剖析方式1 直接处置惩罚2 json剖析3 正则表达式4 BeautifulSoup5 PyQuery6 XPath2.数据清洗数据获得手,我们就需要对我们爬取的数据举行清洗事情,为之后的数据分析做铺垫,如果清洗的不到位势必会对之后的数据分析造成影响。下文将从数据花样统一、空值处置惩罚。花样统一去掉数据的空格中在用爬虫举行数据爬取时用strip()对爬取的字符串举行处置惩罚将中文数据转换为阿拉伯数字例如1.7万酿成17000,代码如下def get_int(s):if s[-1]=="万":s=s[0:-1]s=int(float(s)*10000)else:s=int(s)return s1234567远行效果如下if __name__ == '__main__':s="1.2万"price = get_int(s)print(price)#120001234空值处置惩罚用爬虫对数据爬取的时候,若爬取的值不存在会报错,用异常处置惩罚语句try{}except:pass(try为爬取视频信息的代码),跳过不存在的视频信息数据。

try:html=requests.get(Link).textdoc=BeautifulSoup(html);List=doc.find('div',{'class':'ops'}).findAll('span')like=List[0].text.strip()#点赞like=self.getint(like)coin=List[1].text.strip()#投币coin=self.getint(coin)collection=List[2].text.strip()#收藏collection=self.getint(collection)print('点赞',like)print('投币',coin)print('收藏',collection)# #将数据 拼合成字典 data={'Title':Title,'link':Link,'Up':Up,'Play':Play,'Like':like,'Coin':coin,'Collection':collection, }# 存储到csv文件self.write_dictionary_to_csv(data,'blibli2.csv')passexcept:pass1234567891011121314151617181920212223242526272829303.数据分析及可视化表格参数信息如图对视频排放量举行分析对B站热门播放量举行分析,对2020年热门视频的播放量分为4个品级一千万排放量以上为一个品级五百万到一千万播放量为一个品级五百万到一百万播放量为一个品级一百万播放量以下为一个品级l1=len(data[data['Play'] >= 10000000])l2=len(data[(data['Play'] < 10000000) & (data['Play'] >=5000000)])l3=len(data[(data['Play'] < 5000000) & (data['Play'] >=1000000)])l4=len(data[data['Play'] < 1000000])1234再数据通过matplotlib库举行可视化。获得下图。plt.figure(figsize=(9,13)) #调治图形巨细labels = ['大于一千万','一千万到五百万','五百万到一百万','小于一百万'] #界说标签sizes = [l1, l2, l3, l4] #每块值colors = ['green', 'yellow', 'blue', 'red'] #每块颜色界说explode = (0,0,0,0) #将某一块支解出来,值越大支解出的间隙越大# 中文乱码和坐标轴负号处置惩罚plt.rcParams['font.sans-serif'] = ['KaiTi']plt.rcParams['axes.unicode_minus'] = Falsepatches,text1,text2 = plt.pie(sizes, explode=explode, labels=labels, colors=colors, autopct = '%3.2f%%', #数值保留牢固小数位 shadow = False, #无阴影设置 startangle =90, #逆时针起始角度设置 pctdistance = 0.6) #数值距圆心半径倍数距离#patches饼图的返回值,texts1饼图外label的文本,texts2饼图内部的文本# x,y轴刻度设置一致,保证饼图为圆形plt.axis('equal')plt.title("B站热门播放量漫衍图")plt.legend() # 右上角显示plt.show()12345678910111213141516171819202122从图中可以看出,在B站能上每周必看热门推荐的视频播放量大部门在五百万到一百万播放量,低于一百万播放量的视频很难上每周必看热门推荐,而一年中播放量到达于一千万的视频也很少。

让我们一起看看播放量排名前10的视频是那些悦目的视频data.nlargest(10,columns='Play') 1再数据通过matplotlib库举行可视化。获得下图。d.plot.bar(figsize = (10,8),x='Title',y='Play',title='Play top 10')plt.xticks(rotation=60)#夹角旋转60度plt.show()123从图中可以看出哔哩哔哩贺年祭最受接待且播放量远远高于其它视频,说明B站2020年贺年祭节目举行的比力乐成。

对作者举行分析通过数据分析看谁人作者的作品上热门次数最多,从而判断谁人作者在2020年中最受接待。对作者举行划分,统计泛起的次数d2=data.loc[:,'Up'].value_counts()d2=d2.head(10)12再数据通过matplotlib库举行可视化。获得下图。

d2.plot.bar(figsize = (10,8),title='UP top 10')plt.show()12说明B站上每周热门次数最多的作者是凉风Kaze,一年52周热门推荐,一共泛起了48次,险些每周热门都有他的视频泛起。从数据来看,2020年最受接待的作者是凉风Kaze。

对视频参数分析对热门视频的点赞,投币,收藏平均比例举行分析data['点赞比例'] = data['Like'] /data['Play']data['投币比例'] = data['Coin'] /data['Play'] data['收藏比例'] = data['Collection'] /data['Play']d3=data.iloc[:,8:11]d3=d3.mean()12345再数据通过matplotlib库举行可视化。获得下图。

d3.plot.bar(figsize = (10,8),title='UP top 10')plt.show()122020年中点赞比例最高,到达约莫9%。说明在B站看视频的人,平均10小我私家中才会有一小我私家点赞。而平均平均20小我私家中才会有一小我私家对视频举行投币。

对标题举行分析对标题高频次举行提取,看那类标题比力受接待首先对所有标题举行遍历,储存在字符串s中d4=data['Title']s=''for i in d4: s=s+i1234然后用词云举行可视化标题中带有“朱一旦,半佛,罗翔”等作者名或“英雄同盟,原神”等游戏热门视频比力多小编是一名python开发工程师,这里有我自己整理了一套最新的python系统学习教程,包罗从基础的python剧本到web开发、爬虫、数据分析、数据可视化、机械学习等。想要这些资料的可以关注小编,并在后台私信小编:“01”即可领取。


本文关键词:站,2020年,每周,必看,热门,视频,数据,盘货,亚博yabo888vip网页版

本文来源:亚博vip网页版-www.hdpaper.cn

联系方式

全国服务热线

066-60937377

手 机:12374391605

地 址:陕西省安康市孝昌县远事大楼44号

扫一扫,加微信

Copyright © 2003-2021 www.hdpaper.cn. 亚博vip网页版科技 版权所有 ICP备15312603号-3 XML地图 织梦模板