爬虫&数据分析实战——腾讯视频《奔跑吧》第九季弹幕数据分析

本文介绍了对腾讯视频《奔跑吧》第九季第八期弹幕数据的分析过程,包括数据来源、数据格式和依赖包介绍。通过Python的requests、Pandas、Matplotlib和jieba等库,提取并处理JSON格式的弹幕数据,将其转换为CSV文件,并进行了词频统计、词云图绘制、名字频率统计以及时间分布分析。结果显示,“啊啊啊”和“baby”是最常出现的词汇,而“松韵”是出现频率最高的名字。
摘要由CSDN通过智能技术生成

原文链接

淘宝搜券小助手上线啦,喜欢网购的你赶快来试试吧~!淘宝搜券微信机器人正在开发中,尽情期待!点击链接进入→淘宝搜券小助手

淘宝优惠券

一、概述

1.数据来源

本次数据分析使用的数据来源腾讯视频的《奔跑吧》第九季第八期的弹幕数据。

2.数据概述

数据格式为JSON格式数据,包含在回调函数中,需使用正则表达式提取出来后再进行后续数据分析操作

3.依赖包及格式文件介绍

requests库是一个常用的用于http请求的模块,它使用python语言编写,基于urllib,采用 Apache2 Licensed 开源协议的 HTTP 库,可以方便的对网页进行爬取,相比urllib更加方便,可以节约开发者大量的工作,是学习python爬虫的较好的http请求模块。

Pandas是一个强大的分析结构化数据的工具集;它的使用基础是Numpy(提供高性能的矩阵运算);用于数据挖掘和数据分析,同时也提供数据清洗功能。

Matplotlib 是一个 Python 的 2D绘图库,它以各种硬拷贝格式和跨平台的交互式环境生成出版质量级别的图形。

jieba的主要功能是做中文分词,可以进行简单分词、并行分词、命令行分词,当然它的功能不限于此,目前还支持关键词提取、词性标注、词位置查询等。

wordcloud是优秀的词云展示第三方库,以词语为基本单位,通过图形可视化的方式,更加直观和艺术的展示文本。

JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式,易于人阅读和编写,JSON对象由花括号括起来的逗号分割的成员构成,成员是字符串键和上文所述的值由逗号分割的键值对组成。

CSV是一种通用的、相对简单的文件格式,被用户、商业和科学广泛应用,最广泛的应用是在程序之间转移表格数据,而这些程序本身是在不兼容的格式上进行操作的。下面展示的代码实现了JSON格式向CSV的转换。

二、弹幕数据分析及可视化

1.导入全部依赖包

import requests
import re
import json
import jieba
from wordcloud import WordCloud
import matplotlib.pyplot as plt
import pandas as pd

2.设置matplotlib中文字体

plt.rcParams['font.sans-serif'] = ['simhei']  # 用来正常显示中文标签
plt.rcParams['axes.unicode_minus'] = False  # 用来正常显示负号

3.通过requests来获取弹幕内容数据

url = 'https://mfm.video.qq.com/danmu?otype=json&callback=jQuery19109073533539243266_1625488331995&target_id=6972946900%26vid%3Dq00389hmv7w&session_key=0%2C0%2C0&timestamp=15&_=1625488331996'
response = requests.get(url)
response.encoding = 'utf-8'

4.从包含回调函数的字符串中提取JSON格式内容数据

main_json = re.findall('jQuery\d+_\d+[(](.*)[)]',response.text)

5.加载JSON数据解析并进行数据整理

js = json.loads(main_json[0])
danmu = [''.join(item['content'].split()) for item in js
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Quanfita

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值