Python導(dǎo)出并分析聊天記錄詳解流程
導(dǎo)出聊天記錄生成詞云看看你和對象聊了什么(可惜我沒女朋友)
1.導(dǎo)出聊天記錄打開消息管理器

導(dǎo)出的格式選擇txt格式(我這里選擇導(dǎo)出的路徑是桌面所以在桌面上生成了一個(gè)包含聊天記錄的.txt文件)

2.編寫代碼圖中框出來的文本是我們不需要的(比如說圖片會在這里面顯示為[圖片]表情顯示為[表情]) 所以我們把它替換掉,我這里用到了正則:

string = open(r'C:\\Users\\l1768\\Desktop\\消息記錄.txt','r',encoding='utf-8').read()
s = re.compile('2020.+洋仔|2020.+?﹏?? 大大大威鍋丶|表情|圖片|2019.+洋仔|2019.+?﹏?? 大大大威鍋丶|撤回了一條消息|系統(tǒng)消息')#編寫正則表達(dá)式
message = re.sub(s,'',string)#替換對應(yīng)的字符串為空字符串
然后我們把經(jīng)過處理的文本再進(jìn)行去除特殊字符處理
def getText(text):#該函數(shù)用來替換文本中出現(xiàn)的特殊字符
txt = text
for ch in '!"#$%&()*+,-./:;<=>?@[\\]^_‘{|}~,。、 :':
txt = txt.replace(ch, "") #將文本中特殊字符替換為空格
return txt
message = getText(message)
使用jieba分詞并生成詞云
split_message = jieba.lcut(message)
wordcloud_txt = ' '.join(split_message)
w=wordcloud.WordCloud(background_color="white",
font_path='./fonts/simhei.ttf',
width=1600,height=800,
max_words=2000)#設(shè)置生成詞云的參數(shù),background_color指定圖片背景顏色,
#font_path設(shè)置中文字體,要不然中文會顯示不出來
#width=1600,height=800分別指定圖片的寬度像素和高度像素,
#max_words指定生成詞云的詞最大是兩千詞
#還有很多可選參數(shù),大家可以自行百度
w.generate(wordcloud_txt)#向詞云傳遞文本
w.to_file("聊天記錄詞云.png")#最后生成詞云的圖片
3.最終生成的結(jié)果:

4.完整代碼:
import re
import jieba
import wordcloud
def getText(text):#該函數(shù)用來替換文本中出現(xiàn)的特殊字符
txt = text
for ch in '!"#$%&()*+,-./:;<=>?@[\]^_‘{|}~,。、 :':
txt = txt.replace(ch, "") #將文本中特殊字符替換為空格
return txt
string = open(r'C:\Users\l1768\Desktop\消息記錄.txt','r',encoding='utf-8').read()
s = re.compile('2020.+洋仔|2020.+?﹏?? 大大大威鍋丶|表情|圖片|2019.+洋仔|2019.+?﹏?? 大大大威鍋丶|撤回了一條消息|系統(tǒng)消息')
message = re.sub(s,'',string)
message = getText(message)
split_message = jieba.lcut(message)
wordcloud_txt = ' '.join(split_message)
w=wordcloud.WordCloud(background_color="white", font_path='./fonts/simhei.ttf',width=1600,height=800,max_words=2000)#設(shè)置生成詞云的參數(shù)
w.generate(wordcloud_txt)#向詞云傳遞文本
w.to_file("聊天記錄詞云.png")#最后生成詞云的圖片
到此這篇關(guān)于Python導(dǎo)出并分析聊天記錄詳解流程的文章就介紹到這了,更多相關(guān)Python 分析聊天記錄內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Python中time模塊與datetime模塊在使用中的不同之處
這篇文章主要介紹了Python中time模塊與datetime模塊在使用中的不同之處,是Python入門學(xué)習(xí)中的基礎(chǔ)知識,需要的朋友可以參考下2015-11-11
python高效過濾出文件夾下指定文件名結(jié)尾的文件實(shí)例
今天小編就為大家分享一篇python高效過濾出文件夾下指定文件名結(jié)尾的文件實(shí)例,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧2018-10-10
Pandas中Series和DataFrame的索引實(shí)現(xiàn)
這篇文章主要介紹了Pandas中Series和DataFrame的索引實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2019-06-06
pytorch 實(shí)現(xiàn)張量tensor,圖片,CPU,GPU,數(shù)組等的轉(zhuǎn)換
今天小編就為大家分享一篇pytorch 實(shí)現(xiàn)張量tensor,圖片,CPU,GPU,數(shù)組等的轉(zhuǎn)換,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-01-01
Python使用unicodedata實(shí)現(xiàn)字符串標(biāo)準(zhǔn)化
這篇文章主要來和大家聊一聊 Python 的一個(gè)內(nèi)置模塊:unicodedata,它是專門用來處理 unicode 字符串的,下面就一起來看看它的用法吧2023-06-06
Python Tornado框架輕松寫一個(gè)Web應(yīng)用的全過程
Tornado全稱Tornado Web Server,是一個(gè)用Python語言寫成的Web服務(wù)器兼Web應(yīng)用框架,Tornado走的是少而精的方向,注重的是性能優(yōu)越,它最出名的是異步非阻塞的服務(wù)器方式,這篇文章主要給大家介紹了關(guān)于Python Tornado框架輕松寫一個(gè)Web應(yīng)用的相關(guān)資料,需要的朋友可以參考下2021-08-08

