文章目录
信息内容安全-微博话题检测及分析
简介
根据论文郑斐然 苗夺谦 张志飞 高灿《一种中文微博新闻话题检测的方法》,有改动。
代码
# 信息内容安全实验-(微博)话题检测及分析
# 参考论文:郑斐然 苗夺谦 张志飞 高灿《一种中文微博新闻话题检测的方法》
import jieba
import math
import codecs
# 判断字符是否为汉字(是则返回 True)
def is_chinese(char):
if char >= u'\u4e00' and char <= u'\u9fa5':
return True
else:
return False
# 标准化处理(只留下必要信息)
def standardize(text):
st_text = ""
flag = 0
for char in text:
if flag == 0:
# 提取汉字
if is_chinese(char):
st_text = st_text + char
# 删除以“#话题名#”为格式的部分
elif char == "#":
flag = 1
else:
pass
else:
if char == "#":
flag = 0
with open(st, 'a', encoding = 'utf-8') as s:
s.write("\n原语料内容:\n%s" % text)
s.write("\n-------------------------------------------------------------------")
s.write("\n标准化处理结果:\n%s" % st_text)
s.close()
return st_text
# 根据时间窗将微博语料分类,并进行预处理
def set_time_window():
# 设置时间窗大小(单位:小时)
time_window = 1
# 按时间窗分类的微博语料,键为时间,值为包含在此时间窗的微博内容列表
time_window_dict = {
}
# 按行读取微博内容(一行即为一条微博)
file = open(material, 'r', encoding = 'utf-8')
for line in file.readlines():
#t1 = line.split()[5:7]
count = 0
flag = 0
time = ""
text = ""
for c in line:
count += 1
# 提取发表时间
if count >= 55 and count <=63: