6.12周杰伦发布新歌《Mojito》,赶紧蹭个热点来看一下大家弹幕都会说点什么。
爬取链接【官方MV】Mojito - 周杰伦
本项目源码,提取码duq8
目前弹幕只能抓取1000条,再多些的抓取方法我就不会了,每一次调用API返回的弹幕文本可能会是不一样的,所以各位运行文件后出现的结果会有所不同。
找弹幕API
自己抓包研究是不可能的,前人肯定都帮我们踩过坑了,所以我这种技术渣渣肯定要在搜索引擎上搜寻资料的,B站弹幕接口,这篇文章很详细地介绍了B站弹幕API的各个参数。
B站弹幕API格式:https://api.bilibili.com/x/v1/dm/list.so?oid= + cid
找cid
- 打开爬取链接
- F12打开开发者模式
- 选择Elements,Ctrl+F查询"cid="
- 红色方框内即是我们要找的cid
验证API是否可用
根据上面两步我们得出的弹幕抓取链接是https://api.bilibili.com/x/v1/dm/list.so?oid=201056987,我们来测试一下。
可用,注意是XML格式的,所以我们要解析一下,这次我用的是re。
爬取弹幕
"""
爬取弹幕的原视频链接:https://www.bilibili.com/video/BV1PK4y1b7dt?from=search&seid=8989995112711953123
B站弹幕API格式:https://api.bilibili.com/x/v1/dm/list.so?oid= + cid
"""
import requests
import jieba
from wordcloud import WordCloud
import matplotlib.pyplot as plt
import warnings
import re
import pandas as pd
import seaborn as sns
import pyecharts.charts as pyc
import pyecharts.options as opts
# 解决matplotlib中文乱码
plt.rcParams['font.sans-serif'] = [</