抗击肺炎,我们能做到的,就是别让爱隔离——python分析B站三个视频弹幕内容,云图数据。

武汉是个美丽的城市,但这个城市现在生病了。

“人之初,性本善”

美丽的武汉生病了,一场大病,有钱的人能捐钱,而我,一直陪着你们吧,武汉加油 !
有人说“武汉人咋啥也吃”
有人说“武汉人真讨厌,生病了还往外跑”
有人说“武汉加油”
… …
前几天想,为什么我会看到人们都在骂武汉?是少部分人在骂?还是我们都在希望这个城市恢复。为了验证这个想法,我想看看,大多数人们怎么想。

首先确定数据来源

我选取了B站,某些UP主做的视频的弹幕为数据源,总共3个,浏览量较大,弹幕较多。在这里插入图片描述在这里插入图片描述
在这里插入图片描述
单拿第一个为例,我们右键查看网页源码根本不会发现我们要获得的内容,这时候,关键步骤来了。在这里插入图片描述在这里插入图片描述

1.按F12,打开后台。
2.在搜索框中搜索list
3.此时,刷新网页,就会出现我们需要的(如图)

双击进入此网页在这里插入图片描述在这里插入图片描述

其次,爬取网页内容

import requests
from bs4 import BeautifulSoup

def get_url_comment(url):
    headers = {
        "User-Agent":"Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/70.0.3538.25 Safari/537.36 Core/1.70.3741.400 QQBrowser/10.5.3863.400"
    }
    try:
        r = requests.get(url ,headers = headers, timeout = 30)#获得url的相关参数
        r.raise_for_status()
        r.encoding = r.apparent_encoding
        print ("网页获取成功",r.status_code )
        return r.text
    except Exception as e :
        return "网页爬取异常" , r.status_code ,e#返回状态码

def explain_HTML_comment(text):#解析网页内容,并获得弹幕内容,保存至lst列表数据结构当中
    global lst
    lst = []
    soup = BeautifulSoup(text, "html.parser")  # 解释
    for item in soup.find_all("d"):
        lst.append(item.get_text())

接着图像处理

import wordcloud
from imageio import imread

def analysis_wordcloud(text):
    print ("执行图像处理中....")
    mk = imread(r"C:\Users\Dell\Desktop\u=3054214792,672612295&fm=26&gp=0.jpg")
    w = wordcloud.WordCloud(width = 1500,
                            height = 1500,
                            background_color = 'white',
                            font_path = 'msyh.ttc',
                            max_words = 1000,
                            mask = mk,
                            contour_width = 5,
                            contour_color = 'red'
                            );  # 配置对象参数
    w.generate(text);  # 加载词云文本
    w.to_file(r"C:\Users\Dell\Desktop\yuntu1.jpg")
    print ("执行结束,已保存至桌面")

欧克,总代码如下

import requests
from bs4 import BeautifulSoup
import wordcloud
from imageio import imread

def get_url_comment(url):
    headers = {
        "User-Agent":"Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/70.0.3538.25 Safari/537.36 Core/1.70.3741.400 QQBrowser/10.5.3863.400"
    }
    try:
        r = requests.get(url ,headers = headers, timeout = 30)#获得url的相关参数
        r.raise_for_status()
        r.encoding = r.apparent_encoding
        print ("网页获取成功",r.status_code )
        return r.text
    except Exception as e :
        return "网页爬取异常" , r.status_code ,e#返回状态码

def explain_HTML_comment(text):
    global lst
    lst = []
    soup = BeautifulSoup(text, "html.parser")  # 解释
    for item in soup.find_all("d"):
        lst.append(item.get_text())

def analysis_wordcloud(text):
    print ("执行图像处理中....")
    mk = imread(r"C:\Users\Dell\Desktop\u=3054214792,672612295&fm=26&gp=0.jpg")
    w = wordcloud.WordCloud(width = 1500,
                            height = 1500,
                            background_color = 'white',
                            font_path = 'msyh.ttc',
                            max_words = 1000,
                            mask = mk,
                            contour_width = 5,
                            contour_color = 'red'
                            );  # 配置对象参数
    w.generate(text);  # 加载词云文本
    w.to_file(r"C:\Users\Dell\Desktop\yuntu1.jpg")
    print ("执行结束,已保存至桌面")

if __name__ == '__main__':
    url = [r"https://api.bilibili.com/x/v1/dm/list.so?oid=145005943",
           "https://api.bilibili.com/x/v1/dm/list.so?oid=145317727",
           "https://api.bilibili.com/x/v1/dm/list.so?oid=145567103"]#三个视频的弹幕网页
    text = ""
    text1 = ""
    for each in url:
        text += get_url_comment(each)
    explain_HTML_comment(text)
    text1 += ','.join(lst)
    analysis_wordcloud(text1)

效果如下

在这里插入图片描述
未设置云图形状时:
在这里插入图片描述
设置云图形状:
在这里插入图片描述
云图参考边框:
在这里插入图片描述

“武汉加油,武汉加油,武汉加油,中国加油,五千年文明怎会被寒冬摧毁”

可见,大多数人并没有那么心凉,武汉的同胞们,大多数人仍然和你在一起,大多数人不会让爱“隔离”,加油武汉!
而前不久,有人还在某平台吵起了“地域黑”,我是敢怒不敢言,网络上这样的人真令人恶心,而我今天想告诉他们,你们只是少数,你们不入流。
错的不是武汉人,是人们的自私,武汉逃离的同胞害怕,请你别害怕,相信我们的党政府,骂武汉的人,请你住嘴,你只是少数,大多数人仍然爱着武汉,爱着中国。
文案不咋的,但就是告诉人们,人之初,性本善,别让杂音污染了耳朵,心向阳!请支持我们的医务人员,别吃野味了。我只能做些这了。

发布了11 篇原创文章 · 获赞 11 · 访问量 760

猜你喜欢

转载自blog.csdn.net/weixin_43818177/article/details/104110630