爬取b站弹幕制作词云 (用宋浩老师的视频为例(手动狗头))可以仔细看代码 讲解都非常的详细
#引库 import requests from bs4 import BeautifulSoup import pandas as pd #请求、解析、保存数据 # 请求数据 url = 'https://comment.bilibili.com/64641038.xml' html = requests.get(url).content # 解析数据 html_data = str(html, 'utf-8') bs4 = BeautifulSoup(html_data, 'lxml') results = bs4.find_all('d') comments = [comment.text for comment in results] comments_dict = {'comments': comments} # 将数据保存在本地 br = pd.DataFrame(comments_dict) br.to_csv('D:/pycharm路径/词云.csv', encoding='utf-8') #保存数据的路径 #接下来,我们就对保存好的数据进行深加工。 #制作词云,我们需要用到 wordcloud 模块、matplotlib 模块、jieba 模块,同样都是第三方模块,直接用 pip 进行安装。 from wordcloud import WordCloud, ImageColorGenerator import matplotlib.pyplot as plt import pandas as pd import jieba import numpy from PIL import Image #去除一些词语 exclude={"我的","我","得","的","有","了","是","你"} # 解析背景图片 #mask_img = plt.imread('C:/Users/Lenovo/Desktop/2.jpg') #图片背景的地址 mask_img = numpy.array(Image.open('D:/pycharm路径/6.jpg')) #设置词云样式 wc = WordCloud( scale=5, #这个数值越大,产生的图片分辨率越高,字迹越清晰,最好不要超过64,运行很慢 # 设置字体 font_path='SIMYOU.TTF', # 允许最大词汇量 max_words = 3000, # 设置最大号字体大小 max_font_size = 70, # 设置使用的背景图片 mask = mask_img, # 设置输出的图片背景色 background_color=None, mode="RGBA", # 设置有多少种随机生成状态,即有多少种配色方案 random_state=50, #不显示这些词语 stopwords=exclude) #接下来,我们要读取文本信息,进行分词并连接起来 # 读取文件内容 br = pd.read_csv('D:/pycharm路径/词云.csv', header=None) #和上边保存数据的路径一样 # 进行分词,并用空格连起来 text = '' for line in br[1]: text += ' '.join(jieba.cut(line, cut_all=False)) wc.generate(text) plt.imshow(wc) #显示词云 plt.axis("off") #关闭坐标轴 plt.show() #显示图像
动动小手点个赞❤