python爬取芒果TV《乘风破浪的姐姐》弹幕数据(已完成)

爬取平台:芒果TV
爬取内容:《乘风破浪的姐姐》弹幕数据(以前6期为例)
爬取工具:Anaconda3 Spyder
爬取日期:2020年7月1日

打开节目网页,通过开发者工具Network中的XHR我们可以发现,随着节目的播放,每隔一分钟XHR中会新增一个json文件。
在这里插入图片描述
查看json文件,可以发现每个json文件都存储着前一分钟内所有的弹幕数据,主要包括用户名、弹幕内容、点赞数等,因此,节目时长(min)=json文件数。

在本次实验中,主要爬取用户id、用户名uname、弹幕内容content、发布时间time、弹幕点赞数v2_up_count。
在这里插入图片描述
在Headers中可以获取每个json文件的url(图是7.14补的,所以和代码里的url有差异,问题不大),发现同一期节目json文件的url日期后两个数字是一样的,可以通过这两个数字定位到节目的某一集。
在这里插入图片描述在这里插入图片描述
找到url的规律后开始写代码。
首先导入requests库、json库、pandas库。

import requests
import json
import pandas as pd

构建get_danmu(num1,num2,page)函数,其中num1、num2为url日期后的两个数字,page是json文件后缀前的数字(即节目分钟数)。

代码中用到的函数:
format():格式化输出,即将format()后面的内容,填入大括号中(可以按位置,可以按变量)
requests.get():向指定的资源发出请求
res.text:获取文本信息(否则只返回HTTP状态码)
json.loads():将json格式数据(字符串)转换为字典

#提取某一期的弹幕
def get_danmu(num1,num2,page):
    try:
        url=
  • 2
    点赞
  • 17
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值