import openpyxl
import threading
#多线程处理,本人聊天记录为73622行,四个线程处理,每个17000多行,我先将无关列删去,留下四列,序号,isSend,createTime,还有content,所以我选择判断是谁发送的,再保存聊天记录
def cxk1():
for i in range(2,17905):
try:
#判断是谁发送
if str((row=i, column=1).value)=='0':
#保存第四列的聊天记录
('傻猪:'+(row=i, column=4).value+'\n')
else:
('\t\t\t\t\t\t\t'+(row=i, column=4).value+':帅哥凯'+'\n')# A表示列,1表示行
except:
continue
print('1_ok')
def cxk2():
for i in range(17905,35810):
try:
if str((row=i, column=1).value)=='0':
('傻猪:'+(row=i, column=4).value+'\n')
else:
('\t\t\t\t\t\t\t'+(row=i, column=4).value+':帅哥凯'+'\n')# A表示列,1表示行
except:
continue
print('2_ok')
def cxk3():
for i in range(35810,53715):
try:
if str((row=i, column=1).value)=='0':
('傻猪:'+(row=i, column=4).value+'\n')
else:
('\t\t\t\t\t\t\t'+(row=i, column=4).value+':帅哥凯'+'\n')# A表示列,1表示行
except:
continue
print('3_ok')
def cxk4():
for i in range(53715,71622):
try:
if str((row=i, column=1).value)=='0':
('傻猪:'+(row=i, column=4).value+'\n')
else:
('\t\t\t\t\t\t\t'+(row=i, column=4).value+':帅哥凯'+'\n')# A表示列,1表示行
except:
continue
print('4_ok')
def fun1():
th=(target=cxk1)
(True)#守护线程
()
def fun2():
th=(target=cxk2)
(True)#守护线程
()
def fun3():
th=(target=cxk3)
(True)#守护线程
()
def fun4():
th=(target=cxk4)
(True)#守护线程
()
#将聊天记录导出到txt文件
file = open('','w')
#你导出的微信聊天记录文件,先将csv转为xlsx文件
wb = openpyxl.load_workbook('')
sh = wb['weixin']
fun1()
fun2()
fun3()
fun4()
()
()
# 词云库
from wordcloud import WordCloud
import PIL .Image as image
import numpy as np
with open("") as fp:
text=()
# print(text)
# 将文本放入WordCoud容器对象中并分析
# 词云图片
mask = ((""))
#字体:C:\Windows\Fonts\ C:\Windows\Fonts\
font="C:\Windows\Fonts\"
WordCloud =WordCloud(
# 设置字体,不指定就会出现乱码
font_path=font, # 这个路径是pc中的字体路径
# 设置背景色
background_color='white',
# 词云形状
mask=mask,
# 允许最大词汇
max_words=100,
# 最大号字体
max_font_size=100,
# 设置有多少种随机生成状态,即有多少种配色方案
random_state=30,
# 清晰度
scale=3
).generate(text)
image_produce = WordCloud.to_image()
image_produce.show()
print('完成')