bilibili彈幕詞雲
美國歷史詞雲
JIEBA分詞
import jieba txt=" **** " 精確模式: 全模式: 搜索模式: res = jieba.cut(txt) res =jieba.cut(txt ,cut_all=True) res=jieba.cut_for_search(txt) for i in res: for i in res: for i in res: print(i) print(i) print(i) 或者 res = jieba.lcut(txt) res=jieba.lcut(txt,cut_all=True) res=jieba.lcut_for_search(txt) print(res)
詞雲
1.小段文字的詞雲
from wordcloud import WordCloud import matplotlib.pylot as plt from imageio import imread txt="小段文字" color_mask=imread('圖片路徑') wc=WordCloud( width: ** , height: ** , background_color: ** , font_path:r'c:\windows\Fonts\***', mask=color_mask ) wc.generate( txt ) wc.to_file('cy.pg') plt.imshow(wc) plt.show()
2.文本文件的詞雲
from wordcloud import WordCloud import matplotlib.pylot as plt from imageio import imread f.open('文本文件名.txt',encoding='utf8') data=f.read result="".join(jieba.lcut(data)) color_mask=imread('圖片名.jpg') wc=WordCloud( height:**, width:**, font_path=r'c:\windows\Fonts\***', mask=color_mask ) wc.generate(result) wc.to_file('圖片名.png') plt.imshow(wc) plt.show()
案例()
1.爬取bilibili彈幕
import requests from bs4 import BeautifulSoup import pandas as pd imort datetime import re header={ 'User-Agent':'*********' } url='http:\\comment.bilibili.com/codecid.xml' #向對方服務器發送請求 response=requests.get(url=url,headers=header) #設置字符碼 response.encoding = response.apparent_encoding #獲取文本 data=response.txt #解析 soup=BeautifulSoup(data,'lxml') #獲取所有的d標簽 d_list=soup.find_all('d') dlist[] #循環所有的d標簽 for d in d_list: danmu={} danmu['彈幕']=d.txt #獲取文本信息 danmu['時間']=datetime.datetime.now() danmu['地址']=url dlist.append(danmu) #轉換為二維數組,類似於excel表格 df=pd.DataFrame(dlist) f=open('sign.txt','w',encoding='utf8')#打開文件 #循環所有的文件信息 for i in df['彈幕'].values: pat=re.compile(r'[一-龥]+')#定義過濾的規則(所有的漢字) filter_data=re.findall(pattern=pat,string=i)#執行過濾操作 f.write("".join(filter_data))#寫入文本 f.close()
2.bilibili彈幕分析
import jieba from wordcloud import WordCloud import matplotlib.pylot as plt from imageio import imread f=open('sign.txt','r',encoding='utf8') data=f.read() result="".join(jieba.lcut(data)) f.close color_mask=imread('圖片名稱.jpg') wc=WordCloud( height=***, width=***, background_color='**', font_path=r'c:\windows\Fonts\***', mask=color_mask ) wc.generate(result) wc.to_file('bilibili.png') plt.imshow(wc) plt.show()
————————godlover