标签:
之前,写了这篇文章,用python提取全部群成员的发言时间,并简单做了下分析。先补充一下,针对特定单个群成员(这里以 小小白 为例)消息记录的获取。
代码比较简单,主要是正则表达式的书写。(附:聊天文件记录的导出请参考上面提到的文章)
代码如下:
#2016/9/14 #从QQ聊天数据导出特定人发言的日期时间和发言内容 import re import xlsxwriter # 小小白 这里代指你要获取数据的对象的昵称 # 方便起见,见数据导出的文件名也明明为此 workbook = xlsxwriter.Workbook(‘小小白.xlsx‘) worksheet = workbook.add_worksheet() worksheet.set_column(‘A:A‘, 5) worksheet.set_column(‘B:B‘, 10) worksheet.set_column(‘C:C‘, 200) with open(‘高等数学.txt‘,encoding=‘utf-8‘) as f: s = f.read() # 正则,跨行匹配 pa = re.compile(r‘^(\d{4}-\d{2}-\d{2}) (\d{2}:\d{2}:\d{2}) 小小白\(小小白的QQ号\)\n(.*?)\n$‘,re.DOTALL+re.MULTILINE) ma = re.findall(pa,s) # print(len(ma)) for i in range(len(ma)): # print(ma[i][0]) date = ma[i][0] time = ma[i][1] word = ma[i][2] worksheet.write(int(i),0,date) worksheet.write(int(i),1,time) worksheet.write(int(i),2,word) workbook.close() print("处理完毕,快去看看文件夹下面新建的.xlsx文件吧")
标签:
原文地址:http://www.cnblogs.com/buzhizhitong/p/5870349.html